// ******************************************************************************
// Copyright     :  Copyright (C) 2020, Hisilicon Technologies Co. Ltd.
// File name     :  crypto_c_union_define.h
// Project line  :  Platform And Key Technologies Development
// Department    :  CAD Development Department
// Author        :  xxx
// Version       :  1.0
// Date          :  2020/7/25
// Description   :  The description of xxx project
// Others        :  Generated automatically by nManager V5.1
// History       :  xxx 2020/07/25 10:01:08 Create file
// ******************************************************************************

#ifndef CRYPTO_C_UNION_DEFINE_H
#define CRYPTO_C_UNION_DEFINE_H
/* Define the union csr_am_ctrl_global_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctrl_shutdown_req : 1;         /* [0] */
        u32 ctrl_lat_stat_rd_en : 1;       /* [1] */
        u32 ctrl_lat_stat_wr_en : 1;       /* [2] */
        u32 rsv_0 : 1;                     /* [3] */
        u32 rd_rate_limit : 4;             /* [7:4] */
        u32 wr_rate_limit : 4;             /* [11:8] */
        u32 rsv_1 : 4;                     /* [15:12] */
        u32 ctrl_en_rd_256byte_global : 1; /* [16] */
        u32 ctrl_en_wr_256byte_global : 1; /* [17] */
        u32 ctrl_clkgt_en : 1;             /* [18] */
        u32 rsv_2 : 13;                    /* [31:19] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_ctrl_global_u;

/* Define the union csr_am_ctrl_latency_sel_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctrl_lat_rd_port_sel : 4; /* [3:0] */
        u32 rsv_3 : 4;                /* [7:4] */
        u32 ctrl_lat_wr_port_sel : 4; /* [11:8] */
        u32 rsv_4 : 4;                /* [15:12] */
        u32 rsv_5 : 16;               /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_ctrl_latency_sel_u;

/* Define the union csr_am_ctrl_ptl_wr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctrl_ptl_wr_64byte : 1; /* [0] */
        u32 rsv_6 : 31;             /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_ctrl_ptl_wr_u;

/* Define the union csr_am_cfg_max_trans_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cfg_max_rd_trans : 8; /* [7:0] */
        u32 cfg_max_wr_trans : 8; /* [15:8] */
        u32 rsv_7 : 16;           /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_cfg_max_trans_u;

/* Define the union csr_am_cfg_single_port_max_trans_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cfg_max_sgl_port_rd_trans : 8; /* [7:0] */
        u32 cfg_max_sgl_port_wr_trans : 8; /* [15:8] */
        u32 rsv_8 : 16;                    /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_cfg_single_port_max_trans_u;

/* Define the union csr_am_cfg_port_rd_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cfg_port_rd_en : 16; /* [15:0] */
        u32 rsv_9 : 16;          /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_cfg_port_rd_en_u;

/* Define the union csr_am_cfg_port_wr_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cfg_port_wr_en : 16; /* [15:0] */
        u32 rsv_10 : 16;         /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_cfg_port_wr_en_u;

/* Define the union csr_am_curr_aw_w_fifo_sts_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_w_tx_port : 16; /* [15:0] */
        u32 curr_w_tx_stock : 2; /* [17:16] */
        u32 curr_w_tx_idle : 1;  /* [18] */
        u32 rsv_11 : 13;         /* [31:19] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_aw_w_fifo_sts_u;

/* Define the union csr_am_curr_port_sts_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_port_sts : 16; /* [15:0] */
        u32 curr_wr_port_sts : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_port_sts_u;

/* Define the union csr_am_rob_ecc_int_sts_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rob_ecc_err_onebit : 1; /* [0] */
        u32 rob_ecc_err_multpl : 1; /* [1] */
        u32 rsv_12 : 30;            /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_rob_ecc_int_sts_u;

/* Define the union csr_am_rob_ecc_int_mask_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cfg_ecc_err_detect_int_msk : 1; /* [0] */
        u32 cfg_ecc_err_multpl_int_msk : 1; /* [1] */
        u32 rsv_13 : 30;                    /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_rob_ecc_int_mask_u;

/* Define the union csr_am_rob_ecc_err_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rob_ecc_onebit_err_addr : 12; /* [11:0] */
        u32 rob_ecc_multpl_err_addr : 12; /* [23:12] */
        u32 rsv_14 : 8;                   /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_rob_ecc_err_addr_u;

/* Define the union csr_am_curr_max_rd_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_max_rd_latency : 16; /* [15:0] */
        u32 rsv_15 : 16;              /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_max_rd_latency_u;

/* Define the union csr_am_curr_ava_rd_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_ava_rd_latency : 16; /* [15:0] */
        u32 rsv_16 : 16;              /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_ava_rd_latency_u;

/* Define the union csr_am_curr_rd_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_latency : 16; /* [15:0] */
        u32 rsv_17 : 16;          /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_rd_latency_u;

/* Define the union csr_am_curr_max_wr_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_max_wr_latency : 16; /* [15:0] */
        u32 rsv_18 : 16;              /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_max_wr_latency_u;

/* Define the union csr_am_curr_ava_wr_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_ava_wr_latency : 16; /* [15:0] */
        u32 rsv_19 : 16;              /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_ava_wr_latency_u;

/* Define the union csr_am_curr_wr_latency_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_wr_latency : 16; /* [15:0] */
        u32 rsv_20 : 16;          /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_wr_latency_u;

/* Define the union csr_am_curr_trans_return_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_all_rd_returned : 1; /* [0] */
        u32 curr_all_wr_returned : 1; /* [1] */
        u32 rsv_21 : 30;              /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_trans_return_u;

/* Define the union csr_am_curr_rd_max_txid_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_max_txid : 7; /* [6:0] */
        u32 rsv_22 : 25;          /* [31:7] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_rd_max_txid_u;

/* Define the union csr_am_curr_wr_max_txid_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_wr_max_txid : 7; /* [6:0] */
        u32 rsv_23 : 25;          /* [31:7] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_wr_max_txid_u;

/* Define the union csr_am_curr_rd_txid_sts_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_txid_sts_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_rd_txid_sts_0_u;

/* Define the union csr_am_curr_rd_txid_sts_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_txid_sts_1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_rd_txid_sts_1_u;

/* Define the union csr_am_curr_rd_txid_sts_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_rd_txid_sts_2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_rd_txid_sts_2_u;

/* Define the union csr_am_curr_wr_txid_sts_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_wr_txid_sts_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_wr_txid_sts_0_u;

/* Define the union csr_am_curr_wr_txid_sts_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_wr_txid_sts_1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_wr_txid_sts_1_u;

/* Define the union csr_am_curr_wr_txid_sts_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 curr_wr_txid_sts_2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_curr_wr_txid_sts_2_u;

/* Define the union csr_am_alarm_rresp_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 alarm_rresp_0 : 1; /* [0] */
        u32 alarm_rresp_1 : 1; /* [1] */
        u32 alarm_rresp_2 : 1; /* [2] */
        u32 alarm_rresp_3 : 1; /* [3] */
        u32 rsv_24 : 28;       /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_alarm_rresp_u;

/* Define the union csr_am_alarm_bresp_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 alarm_bresp_0 : 1; /* [0] */
        u32 alarm_bresp_1 : 1; /* [1] */
        u32 alarm_bresp_2 : 1; /* [2] */
        u32 alarm_bresp_3 : 1; /* [3] */
        u32 rsv_25 : 28;       /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_am_alarm_bresp_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_am_ctrl_global_u am_ctrl_global;                             /* 0 */
    volatile csr_am_ctrl_latency_sel_u am_ctrl_latency_sel;                   /* 4 */
    volatile csr_am_ctrl_ptl_wr_u am_ctrl_ptl_wr;                             /* 8 */
    volatile csr_am_cfg_max_trans_u am_cfg_max_trans;                         /* 10 */
    volatile csr_am_cfg_single_port_max_trans_u am_cfg_single_port_max_trans; /* 14 */
    volatile csr_am_cfg_port_rd_en_u am_cfg_port_rd_en;                       /* 18 */
    volatile csr_am_cfg_port_wr_en_u am_cfg_port_wr_en;                       /* 1C */
    volatile csr_am_curr_aw_w_fifo_sts_u am_curr_aw_w_fifo_sts;               /* 20 */
    volatile csr_am_curr_port_sts_u am_curr_port_sts;                         /* 100 */
    volatile csr_am_rob_ecc_int_sts_u am_rob_ecc_int_sts;                     /* 104 */
    volatile csr_am_rob_ecc_int_mask_u am_rob_ecc_int_mask;                   /* 108 */
    volatile csr_am_rob_ecc_err_addr_u am_rob_ecc_err_addr;                   /* 10C */
    volatile csr_am_curr_max_rd_latency_u am_curr_max_rd_latency;             /* 110 */
    volatile csr_am_curr_ava_rd_latency_u am_curr_ava_rd_latency;             /* 114 */
    volatile csr_am_curr_rd_latency_u am_curr_rd_latency;                     /* 118 */
    volatile csr_am_curr_max_wr_latency_u am_curr_max_wr_latency;             /* 130 */
    volatile csr_am_curr_ava_wr_latency_u am_curr_ava_wr_latency;             /* 134 */
    volatile csr_am_curr_wr_latency_u am_curr_wr_latency;                     /* 138 */
    volatile csr_am_curr_trans_return_u am_curr_trans_return;                 /* 150 */
    volatile csr_am_curr_rd_max_txid_u am_curr_rd_max_txid;                   /* 154 */
    volatile csr_am_curr_wr_max_txid_u am_curr_wr_max_txid;                   /* 158 */
    volatile csr_am_curr_rd_txid_sts_0_u am_curr_rd_txid_sts_0;               /* 160 */
    volatile csr_am_curr_rd_txid_sts_1_u am_curr_rd_txid_sts_1;               /* 164 */
    volatile csr_am_curr_rd_txid_sts_2_u am_curr_rd_txid_sts_2;               /* 168 */
    volatile csr_am_curr_wr_txid_sts_0_u am_curr_wr_txid_sts_0;               /* 170 */
    volatile csr_am_curr_wr_txid_sts_1_u am_curr_wr_txid_sts_1;               /* 174 */
    volatile csr_am_curr_wr_txid_sts_2_u am_curr_wr_txid_sts_2;               /* 178 */
    volatile csr_am_alarm_rresp_u am_alarm_rresp;                             /* 180 */
    volatile csr_am_alarm_bresp_u am_alarm_bresp;                             /* 184 */
} S_am_ooo_cfg_REGS_TYPE;

/* Declare the struct pointor of the module am_ooo_cfg */
extern volatile S_am_ooo_cfg_REGS_TYPE *gopam_ooo_cfgAllReg;

/* Declare the functions that set the member value */
int iSetAM_CTRL_GLOBAL_ctrl_shutdown_req(unsigned int uctrl_shutdown_req);
int iSetAM_CTRL_GLOBAL_ctrl_lat_stat_rd_en(unsigned int uctrl_lat_stat_rd_en);
int iSetAM_CTRL_GLOBAL_ctrl_lat_stat_wr_en(unsigned int uctrl_lat_stat_wr_en);
int iSetAM_CTRL_GLOBAL_rd_rate_limit(unsigned int urd_rate_limit);
int iSetAM_CTRL_GLOBAL_wr_rate_limit(unsigned int uwr_rate_limit);
int iSetAM_CTRL_GLOBAL_ctrl_en_rd_256byte_global(unsigned int uctrl_en_rd_256byte_global);
int iSetAM_CTRL_GLOBAL_ctrl_en_wr_256byte_global(unsigned int uctrl_en_wr_256byte_global);
int iSetAM_CTRL_GLOBAL_ctrl_clkgt_en(unsigned int uctrl_clkgt_en);
int iSetAM_CTRL_LATENCY_SEL_ctrl_lat_rd_port_sel(unsigned int uctrl_lat_rd_port_sel);
int iSetAM_CTRL_LATENCY_SEL_ctrl_lat_wr_port_sel(unsigned int uctrl_lat_wr_port_sel);
int iSetAM_CTRL_PTL_WR_ctrl_ptl_wr_64byte(unsigned int uctrl_ptl_wr_64byte);
int iSetAM_CFG_MAX_TRANS_cfg_max_rd_trans(unsigned int ucfg_max_rd_trans);
int iSetAM_CFG_MAX_TRANS_cfg_max_wr_trans(unsigned int ucfg_max_wr_trans);
int iSetAM_CFG_SINGLE_PORT_MAX_TRANS_cfg_max_sgl_port_rd_trans(unsigned int ucfg_max_sgl_port_rd_trans);
int iSetAM_CFG_SINGLE_PORT_MAX_TRANS_cfg_max_sgl_port_wr_trans(unsigned int ucfg_max_sgl_port_wr_trans);
int iSetAM_CFG_PORT_RD_EN_cfg_port_rd_en(unsigned int ucfg_port_rd_en);
int iSetAM_CFG_PORT_WR_EN_cfg_port_wr_en(unsigned int ucfg_port_wr_en);
int iSetAM_CURR_AW_W_FIFO_STS_curr_w_tx_port(unsigned int ucurr_w_tx_port);
int iSetAM_CURR_AW_W_FIFO_STS_curr_w_tx_stock(unsigned int ucurr_w_tx_stock);
int iSetAM_CURR_AW_W_FIFO_STS_curr_w_tx_idle(unsigned int ucurr_w_tx_idle);
int iSetAM_CURR_PORT_STS_curr_rd_port_sts(unsigned int ucurr_rd_port_sts);
int iSetAM_CURR_PORT_STS_curr_wr_port_sts(unsigned int ucurr_wr_port_sts);
int iSetAM_ROB_ECC_INT_STS_rob_ecc_err_onebit(unsigned int urob_ecc_err_onebit);
int iSetAM_ROB_ECC_INT_STS_rob_ecc_err_multpl(unsigned int urob_ecc_err_multpl);
int iSetAM_ROB_ECC_INT_MASK_cfg_ecc_err_detect_int_msk(unsigned int ucfg_ecc_err_detect_int_msk);
int iSetAM_ROB_ECC_INT_MASK_cfg_ecc_err_multpl_int_msk(unsigned int ucfg_ecc_err_multpl_int_msk);
int iSetAM_ROB_ECC_ERR_ADDR_rob_ecc_onebit_err_addr(unsigned int urob_ecc_onebit_err_addr);
int iSetAM_ROB_ECC_ERR_ADDR_rob_ecc_multpl_err_addr(unsigned int urob_ecc_multpl_err_addr);
int iSetAM_CURR_MAX_RD_LATENCY_curr_max_rd_latency(unsigned int ucurr_max_rd_latency);
int iSetAM_CURR_AVA_RD_LATENCY_curr_ava_rd_latency(unsigned int ucurr_ava_rd_latency);
int iSetAM_CURR_RD_LATENCY_curr_rd_latency(unsigned int ucurr_rd_latency);
int iSetAM_CURR_MAX_WR_LATENCY_curr_max_wr_latency(unsigned int ucurr_max_wr_latency);
int iSetAM_CURR_AVA_WR_LATENCY_curr_ava_wr_latency(unsigned int ucurr_ava_wr_latency);
int iSetAM_CURR_WR_LATENCY_curr_wr_latency(unsigned int ucurr_wr_latency);
int iSetAM_CURR_TRANS_RETURN_curr_all_rd_returned(unsigned int ucurr_all_rd_returned);
int iSetAM_CURR_TRANS_RETURN_curr_all_wr_returned(unsigned int ucurr_all_wr_returned);
int iSetAM_CURR_RD_MAX_TXID_curr_rd_max_txid(unsigned int ucurr_rd_max_txid);
int iSetAM_CURR_WR_MAX_TXID_curr_wr_max_txid(unsigned int ucurr_wr_max_txid);
int iSetAM_CURR_RD_TXID_STS_0_curr_rd_txid_sts_0(unsigned int ucurr_rd_txid_sts_0);
int iSetAM_CURR_RD_TXID_STS_1_curr_rd_txid_sts_1(unsigned int ucurr_rd_txid_sts_1);
int iSetAM_CURR_RD_TXID_STS_2_curr_rd_txid_sts_2(unsigned int ucurr_rd_txid_sts_2);
int iSetAM_CURR_WR_TXID_STS_0_curr_wr_txid_sts_0(unsigned int ucurr_wr_txid_sts_0);
int iSetAM_CURR_WR_TXID_STS_1_curr_wr_txid_sts_1(unsigned int ucurr_wr_txid_sts_1);
int iSetAM_CURR_WR_TXID_STS_2_curr_wr_txid_sts_2(unsigned int ucurr_wr_txid_sts_2);
int iSetAM_ALARM_RRESP_alarm_rresp_0(unsigned int ualarm_rresp_0);
int iSetAM_ALARM_RRESP_alarm_rresp_1(unsigned int ualarm_rresp_1);
int iSetAM_ALARM_RRESP_alarm_rresp_2(unsigned int ualarm_rresp_2);
int iSetAM_ALARM_RRESP_alarm_rresp_3(unsigned int ualarm_rresp_3);
int iSetAM_ALARM_BRESP_alarm_bresp_0(unsigned int ualarm_bresp_0);
int iSetAM_ALARM_BRESP_alarm_bresp_1(unsigned int ualarm_bresp_1);
int iSetAM_ALARM_BRESP_alarm_bresp_2(unsigned int ualarm_bresp_2);
int iSetAM_ALARM_BRESP_alarm_bresp_3(unsigned int ualarm_bresp_3);

/* Define the union csr_cryptorx_version_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cryptorx_version : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptorx_version_u;

/* Define the union csr_cryptorx_int_vector_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_cpi_int_index : 24; /* [23:0] */
        u32 rsv_0 : 3;              /* [26:24] */
        u32 crx_enable : 1;         /* [27] */
        u32 crx_int_issue : 1;      /* [28] */
        u32 rsv_1 : 3;              /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptorx_int_vector_u;

/* Define the union csr_cryptorx_int_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_int_data : 4;           /* [3:0] */
        u32 rsv_2 : 12;                 /* [15:4] */
        u32 crx_program_csr_id_ro : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptorx_int_u;

/* Define the union csr_cryptorx_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_int_en : 4;          /* [3:0] */
        u32 rsv_3 : 12;              /* [15:4] */
        u32 crx_program_csr_id : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptorx_int_en_u;

/* Define the union csr_crx_lp_top_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_lp_top_err : 1;         /* [0] */
        u32 crx_lp_top_err_inj : 1;     /* [1] */
        u32 crx_lp_top_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_lp_top_err_u;

/* Define the union csr_crx_lp_gcm_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_lp_gcm_err : 1;         /* [0] */
        u32 crx_lp_gcm_err_inj : 1;     /* [1] */
        u32 crx_lp_gcm_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_lp_gcm_err_u;

/* Define the union csr_crx_lp_cbc_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_lp_cbc_err : 1;         /* [0] */
        u32 crx_lp_cbc_err_inj : 1;     /* [1] */
        u32 crx_lp_cbc_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_lp_cbc_err_u;

/* Define the union csr_crx_xts_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_xts_err : 1;         /* [0] */
        u32 crx_xts_err_inj : 1;     /* [1] */
        u32 crx_xts_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_xts_err_u;

/* Define the union csr_crx_tmout_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_tmout_cfg : 24; /* [23:0] */
        u32 rsv_4 : 8;          /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_tmout_cfg_u;

/* Define the union csr_ipsec_rx_crg_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 icg_en_ipsec_rx : 1;       /* [0] */
        u32 icg_en_ipsec_csr_rx : 1;   /* [1] */
        u32 icg_en_cbc_rx : 1;         /* [2] */
        u32 icg_en_gcm_rx : 1;         /* [3] */
        u32 rsv_5 : 4;                 /* [7:4] */
        u32 srst_req_ipsec_rx : 1;     /* [8] */
        u32 srst_req_ipsec_csr_rx : 1; /* [9] */
        u32 srst_req_cbc_rx : 1;       /* [10] */
        u32 srst_req_gcm_rx : 1;       /* [11] */
        u32 rsv_6 : 20;                /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_rx_crg_cfg_u;

/* Define the union csr_crx_mem_init_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_mem_init : 1; /* [0] */
        u32 rsv_7 : 31;       /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_mem_init_u;

/* Define the union csr_crx_mem_init_done_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_mem_init_done : 1; /* [0] */
        u32 rsv_8 : 31;            /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_mem_init_done_u;

/* Define the union csr_crx_mem_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_mem_power_mode : 6; /* [5:0] */
        u32 crx_tp_ram_tmod : 8;    /* [13:6] */
        u32 crx_sp_ram_tmod : 7;    /* [20:14] */
        u32 crx_ecc_bypass : 1;     /* [21] */
        u32 rsv_9 : 10;             /* [31:22] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_mem_ctrl_u;

/* Define the union csr_crx_reg_cnt_clr_ce_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cnt_clr_ce : 1; /* [0] */
        u32 snap_en : 1;    /* [1] */
        u32 rsv_10 : 30;    /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_reg_cnt_clr_ce_u;

/* Define the union csr_crx_chx_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_gcm_ch_cfg : 5; /* [4:0] */
        u32 rsv_11 : 3;         /* [7:5] */
        u32 crx_cbc_ch_cfg : 5; /* [12:8] */
        u32 rsv_12 : 3;         /* [15:13] */
        u32 crx_xts_ch_cfg : 5; /* [20:16] */
        u32 rsv_13 : 11;        /* [31:21] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_chx_cfg_u;

/* Define the union csr_crx_credit_o_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_pkt_credit_o_cfg : 6;      /* [5:0] */
        u32 rsv_14 : 2;                    /* [7:6] */
        u32 crx_lpch_cmd_credit_o_cfg : 5; /* [12:8] */
        u32 rsv_15 : 19;                   /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_credit_o_cfg_u;

/* Define the union csr_crx_credit2_o_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_lpch_credit2_o_sum : 7; /* [6:0] */
        u32 rsv_16 : 1;                 /* [7] */
        u32 crx_gcm_credit2_o_cfg : 7;  /* [14:8] */
        u32 rsv_17 : 1;                 /* [15] */
        u32 crx_cbc_credit2_o_cfg : 7;  /* [22:16] */
        u32 rsv_18 : 1;                 /* [23] */
        u32 crx_prealc_pkt_credit2 : 4; /* [27:24] */
        u32 rsv_19 : 4;                 /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_credit2_o_cfg_u;

/* Define the union csr_crx_ctrl_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_ctrl_rsv : 24; /* [23:0] */
        u32 rsv_20 : 8;        /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_ctrl_rsv_u;

/* Define the union csr_crx_stat_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_stat_rsv : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_stat_rsv_u;

/* Define the union csr_crx_ept_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_ept : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_ept_u;

/* Define the union csr_crx_full_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_full : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_full_u;

/* Define the union csr_crx_dft_mem_ctrl_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_dft_mem_ctrl_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_dft_mem_ctrl_0_u;

/* Define the union csr_crx_dft_mem_ctrl_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_dft_mem_ctrl_1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_dft_mem_ctrl_1_u;

/* Define the union csr_crx_dft_mem_ctrl_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_dft_mem_ctrl_2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_dft_mem_ctrl_2_u;

/* Define the union csr_crx_dft_mem_ctrl_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_dft_mem_ctrl_3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_dft_mem_ctrl_3_u;

/* Define the union csr_crx_dft_mem_ctrl_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_dft_mem_ctrl_4 : 6; /* [5:0] */
        u32 rsv_21 : 26;            /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_dft_mem_ctrl_4_u;

/* Define the union csr_crx_err1_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_ecc_err1_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_err1_cnt_u;

/* Define the union csr_crx_ecc_err2_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_ecc_err2_addr : 8; /* [7:0] */
        u32 rsv_22 : 24;           /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_ecc_err2_addr_u;

/* Define the union csr_crx_top_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_top_int_en : 8; /* [7:0] */
        u32 rsv_23 : 24;        /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_top_int_en_u;

/* Define the union csr_crx_top_alm_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_top_alm : 8; /* [7:0] */
        u32 rsv_24 : 24;     /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_top_alm_u;

/* Define the union csr_crx_credit_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_gcm_credit_i_err : 1; /* [0] */
        u32 crx_cbc_credit_i_err : 1; /* [1] */
        u32 crx_xts_credit_i_err : 1; /* [2] */
        u32 rsv_25 : 29;              /* [31:3] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_credit_err_u;

/* Define the union csr_crx_inn_credit_i_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_gcm_inn_credit_i_err : 1; /* [0] */
        u32 crx_cbc_inn_credit_i_err : 1; /* [1] */
        u32 crx_xts_inn_credit_i_err : 1; /* [2] */
        u32 rsv_26 : 29;                  /* [31:3] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_inn_credit_i_err_u;

/* Define the union csr_crx_pkt_cnt_i_pre_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_pkt_cnt_i_pre : 8; /* [7:0] */
        u32 rsv_27 : 24;           /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_pkt_cnt_i_pre_u;

/* Define the union csr_crx_chk_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_chk_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_chk_err_cnt_u;

/* Define the union csr_crx_tfc_pad_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_tfc_pad_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_tfc_pad_err_cnt_u;

/* Define the union csr_crx_other_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_other_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_other_err_cnt_u;

/* Define the union csr_crx_pkt_cnt_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_pkt_cnt_i : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_pkt_cnt_i_u;

/* Define the union csr_crx_pkt_cnt_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_pkt_cnt_o : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_pkt_cnt_o_u;

/* Define the union csr_cryptorx_if_i_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cryptorx_if_i_cnt : 16; /* [15:0] */
        u32 rsv_28 : 16;            /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptorx_if_i_cnt_u;

/* Define the union csr_crx_bdsplit_len_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_bdsplit_len_i : 12; /* [11:0] */
        u32 rsv_29 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_bdsplit_len_i_u;

/* Define the union csr_crx_bdsplit_len_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_bdsplit_len_o : 12; /* [11:0] */
        u32 rsv_30 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_bdsplit_len_o_u;

/* Define the union csr_crx_pkt_cmb_len_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 crx_pkt_cmb_len_o : 12; /* [11:0] */
        u32 rsv_31 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_crx_pkt_cmb_len_o_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_cryptorx_version_u cryptorx_version;         /* 0 */
    volatile csr_cryptorx_int_vector_u cryptorx_int_vector;   /* 60 */
    volatile csr_cryptorx_int_u cryptorx_int;                 /* 64 */
    volatile csr_cryptorx_int_en_u cryptorx_int_en;           /* 68 */
    volatile csr_crx_lp_top_err_u crx_lp_top_err;             /* 6C */
    volatile csr_crx_lp_gcm_err_u crx_lp_gcm_err;             /* 70 */
    volatile csr_crx_lp_cbc_err_u crx_lp_cbc_err;             /* 74 */
    volatile csr_crx_xts_err_u crx_xts_err;                   /* 78 */
    volatile csr_crx_tmout_cfg_u crx_tmout_cfg;               /* 80 */
    volatile csr_ipsec_rx_crg_cfg_u ipsec_rx_crg_cfg;         /* 84 */
    volatile csr_crx_mem_init_u crx_mem_init;                 /* 100 */
    volatile csr_crx_mem_init_done_u crx_mem_init_done;       /* 104 */
    volatile csr_crx_mem_ctrl_u crx_mem_ctrl;                 /* 108 */
    volatile csr_crx_reg_cnt_clr_ce_u crx_reg_cnt_clr_ce;     /* 10C */
    volatile csr_crx_chx_cfg_u crx_chx_cfg;                   /* 120 */
    volatile csr_crx_credit_o_cfg_u crx_credit_o_cfg;         /* 128 */
    volatile csr_crx_credit2_o_cfg_u crx_credit2_o_cfg;       /* 12C */
    volatile csr_crx_ctrl_rsv_u crx_ctrl_rsv;                 /* 130 */
    volatile csr_crx_stat_rsv_u crx_stat_rsv;                 /* 134 */
    volatile csr_crx_ept_u crx_ept;                           /* 138 */
    volatile csr_crx_full_u crx_full;                         /* 13C */
    volatile csr_crx_dft_mem_ctrl_0_u crx_dft_mem_ctrl_0;     /* 150 */
    volatile csr_crx_dft_mem_ctrl_1_u crx_dft_mem_ctrl_1;     /* 154 */
    volatile csr_crx_dft_mem_ctrl_2_u crx_dft_mem_ctrl_2;     /* 158 */
    volatile csr_crx_dft_mem_ctrl_3_u crx_dft_mem_ctrl_3;     /* 15C */
    volatile csr_crx_dft_mem_ctrl_4_u crx_dft_mem_ctrl_4;     /* 160 */
    volatile csr_crx_err1_cnt_u crx_err1_cnt;                 /* 170 */
    volatile csr_crx_ecc_err2_addr_u crx_ecc_err2_addr;       /* 174 */
    volatile csr_crx_top_int_en_u crx_top_int_en;             /* 178 */
    volatile csr_crx_top_alm_u crx_top_alm;                   /* 17C */
    volatile csr_crx_credit_err_u crx_credit_err;             /* 200 */
    volatile csr_crx_inn_credit_i_err_u crx_inn_credit_i_err; /* 204 */
    volatile csr_crx_pkt_cnt_i_pre_u crx_pkt_cnt_i_pre[3];    /* 310 */
    volatile csr_crx_chk_err_cnt_u crx_chk_err_cnt;           /* 320 */
    volatile csr_crx_tfc_pad_err_cnt_u crx_tfc_pad_err_cnt;   /* 324 */
    volatile csr_crx_other_err_cnt_u crx_other_err_cnt;       /* 328 */
    volatile csr_crx_pkt_cnt_i_u crx_pkt_cnt_i[3];            /* 210 */
    volatile csr_crx_pkt_cnt_o_u crx_pkt_cnt_o[3];            /* 220 */
    volatile csr_cryptorx_if_i_cnt_u cryptorx_if_i_cnt[3];    /* 280 */
    volatile csr_crx_bdsplit_len_i_u crx_bdsplit_len_i[3];    /* 2A0 */
    volatile csr_crx_bdsplit_len_o_u crx_bdsplit_len_o[3];    /* 2C0 */
    volatile csr_crx_pkt_cmb_len_o_u crx_pkt_cmb_len_o[3];    /* 2E0 */
} S_cryptorx_inout_csr_REGS_TYPE;

/* Declare the struct pointor of the module cryptorx_inout_csr */
extern volatile S_cryptorx_inout_csr_REGS_TYPE *gopcryptorx_inout_csrAllReg;

/* Declare the functions that set the member value */
int iSetCRYPTORX_VERSION_cryptorx_version(unsigned int ucryptorx_version);
int iSetCRYPTORX_INT_VECTOR_crx_cpi_int_index(unsigned int ucrx_cpi_int_index);
int iSetCRYPTORX_INT_VECTOR_crx_enable(unsigned int ucrx_enable);
int iSetCRYPTORX_INT_VECTOR_crx_int_issue(unsigned int ucrx_int_issue);
int iSetCRYPTORX_INT_crx_int_data(unsigned int ucrx_int_data);
int iSetCRYPTORX_INT_crx_program_csr_id_ro(unsigned int ucrx_program_csr_id_ro);
int iSetCRYPTORX_INT_EN_crx_int_en(unsigned int ucrx_int_en);
int iSetCRYPTORX_INT_EN_crx_program_csr_id(unsigned int ucrx_program_csr_id);
int iSetCRX_LP_TOP_ERR_crx_lp_top_err(unsigned int ucrx_lp_top_err);
int iSetCRX_LP_TOP_ERR_crx_lp_top_err_inj(unsigned int ucrx_lp_top_err_inj);
int iSetCRX_LP_TOP_ERR_crx_lp_top_err_sticky(unsigned int ucrx_lp_top_err_sticky);
int iSetCRX_LP_GCM_ERR_crx_lp_gcm_err(unsigned int ucrx_lp_gcm_err);
int iSetCRX_LP_GCM_ERR_crx_lp_gcm_err_inj(unsigned int ucrx_lp_gcm_err_inj);
int iSetCRX_LP_GCM_ERR_crx_lp_gcm_err_sticky(unsigned int ucrx_lp_gcm_err_sticky);
int iSetCRX_LP_CBC_ERR_crx_lp_cbc_err(unsigned int ucrx_lp_cbc_err);
int iSetCRX_LP_CBC_ERR_crx_lp_cbc_err_inj(unsigned int ucrx_lp_cbc_err_inj);
int iSetCRX_LP_CBC_ERR_crx_lp_cbc_err_sticky(unsigned int ucrx_lp_cbc_err_sticky);
int iSetCRX_XTS_ERR_crx_xts_err(unsigned int ucrx_xts_err);
int iSetCRX_XTS_ERR_crx_xts_err_inj(unsigned int ucrx_xts_err_inj);
int iSetCRX_XTS_ERR_crx_xts_err_sticky(unsigned int ucrx_xts_err_sticky);
int iSetCRX_TMOUT_CFG_crx_tmout_cfg(unsigned int ucrx_tmout_cfg);
int iSetIPSEC_RX_CRG_CFG_icg_en_ipsec_rx(unsigned int uicg_en_ipsec_rx);
int iSetIPSEC_RX_CRG_CFG_icg_en_ipsec_csr_rx(unsigned int uicg_en_ipsec_csr_rx);
int iSetIPSEC_RX_CRG_CFG_icg_en_cbc_rx(unsigned int uicg_en_cbc_rx);
int iSetIPSEC_RX_CRG_CFG_icg_en_gcm_rx(unsigned int uicg_en_gcm_rx);
int iSetIPSEC_RX_CRG_CFG_srst_req_ipsec_rx(unsigned int usrst_req_ipsec_rx);
int iSetIPSEC_RX_CRG_CFG_srst_req_ipsec_csr_rx(unsigned int usrst_req_ipsec_csr_rx);
int iSetIPSEC_RX_CRG_CFG_srst_req_cbc_rx(unsigned int usrst_req_cbc_rx);
int iSetIPSEC_RX_CRG_CFG_srst_req_gcm_rx(unsigned int usrst_req_gcm_rx);
int iSetCRX_MEM_INIT_crx_mem_init(unsigned int ucrx_mem_init);
int iSetCRX_MEM_INIT_DONE_crx_mem_init_done(unsigned int ucrx_mem_init_done);
int iSetCRX_MEM_CTRL_crx_mem_power_mode(unsigned int ucrx_mem_power_mode);
int iSetCRX_MEM_CTRL_crx_tp_ram_tmod(unsigned int ucrx_tp_ram_tmod);
int iSetCRX_MEM_CTRL_crx_sp_ram_tmod(unsigned int ucrx_sp_ram_tmod);
int iSetCRX_MEM_CTRL_crx_ecc_bypass(unsigned int ucrx_ecc_bypass);
int iSetCRX_REG_CNT_CLR_CE_cnt_clr_ce(unsigned int ucnt_clr_ce);
int iSetCRX_REG_CNT_CLR_CE_snap_en(unsigned int usnap_en);
int iSetCRX_CHX_CFG_crx_gcm_ch_cfg(unsigned int ucrx_gcm_ch_cfg);
int iSetCRX_CHX_CFG_crx_cbc_ch_cfg(unsigned int ucrx_cbc_ch_cfg);
int iSetCRX_CHX_CFG_crx_xts_ch_cfg(unsigned int ucrx_xts_ch_cfg);
int iSetCRX_CREDIT_O_CFG_crx_pkt_credit_o_cfg(unsigned int ucrx_pkt_credit_o_cfg);
int iSetCRX_CREDIT_O_CFG_crx_lpch_cmd_credit_o_cfg(unsigned int ucrx_lpch_cmd_credit_o_cfg);
int iSetCRX_CREDIT2_O_CFG_crx_lpch_credit2_o_sum(unsigned int ucrx_lpch_credit2_o_sum);
int iSetCRX_CREDIT2_O_CFG_crx_gcm_credit2_o_cfg(unsigned int ucrx_gcm_credit2_o_cfg);
int iSetCRX_CREDIT2_O_CFG_crx_cbc_credit2_o_cfg(unsigned int ucrx_cbc_credit2_o_cfg);
int iSetCRX_CREDIT2_O_CFG_crx_prealc_pkt_credit2(unsigned int ucrx_prealc_pkt_credit2);
int iSetCRX_CTRL_RSV_crx_ctrl_rsv(unsigned int ucrx_ctrl_rsv);
int iSetCRX_STAT_RSV_crx_stat_rsv(unsigned int ucrx_stat_rsv);
int iSetCRX_EPT_crx_ept(unsigned int ucrx_ept);
int iSetCRX_FULL_crx_full(unsigned int ucrx_full);
int iSetCRX_DFT_MEM_CTRL_0_crx_dft_mem_ctrl_0(unsigned int ucrx_dft_mem_ctrl_0);
int iSetCRX_DFT_MEM_CTRL_1_crx_dft_mem_ctrl_1(unsigned int ucrx_dft_mem_ctrl_1);
int iSetCRX_DFT_MEM_CTRL_2_crx_dft_mem_ctrl_2(unsigned int ucrx_dft_mem_ctrl_2);
int iSetCRX_DFT_MEM_CTRL_3_crx_dft_mem_ctrl_3(unsigned int ucrx_dft_mem_ctrl_3);
int iSetCRX_DFT_MEM_CTRL_4_crx_dft_mem_ctrl_4(unsigned int ucrx_dft_mem_ctrl_4);
int iSetCRX_ERR1_CNT_crx_ecc_err1_cnt(unsigned int ucrx_ecc_err1_cnt);
int iSetCRX_ECC_ERR2_ADDR_crx_ecc_err2_addr(unsigned int ucrx_ecc_err2_addr);
int iSetCRX_TOP_INT_EN_crx_top_int_en(unsigned int ucrx_top_int_en);
int iSetCRX_TOP_ALM_crx_top_alm(unsigned int ucrx_top_alm);
int iSetCRX_CREDIT_ERR_crx_gcm_credit_i_err(unsigned int ucrx_gcm_credit_i_err);
int iSetCRX_CREDIT_ERR_crx_cbc_credit_i_err(unsigned int ucrx_cbc_credit_i_err);
int iSetCRX_CREDIT_ERR_crx_xts_credit_i_err(unsigned int ucrx_xts_credit_i_err);
int iSetCRX_INN_CREDIT_I_ERR_crx_gcm_inn_credit_i_err(unsigned int ucrx_gcm_inn_credit_i_err);
int iSetCRX_INN_CREDIT_I_ERR_crx_cbc_inn_credit_i_err(unsigned int ucrx_cbc_inn_credit_i_err);
int iSetCRX_INN_CREDIT_I_ERR_crx_xts_inn_credit_i_err(unsigned int ucrx_xts_inn_credit_i_err);
int iSetCRX_PKT_CNT_I_PRE_crx_pkt_cnt_i_pre(unsigned int ucrx_pkt_cnt_i_pre);
int iSetCRX_CHK_ERR_CNT_crx_chk_err_cnt(unsigned int ucrx_chk_err_cnt);
int iSetCRX_TFC_PAD_ERR_CNT_crx_tfc_pad_err_cnt(unsigned int ucrx_tfc_pad_err_cnt);
int iSetCRX_OTHER_ERR_CNT_crx_other_err_cnt(unsigned int ucrx_other_err_cnt);
int iSetCRX_PKT_CNT_I_crx_pkt_cnt_i(unsigned int ucrx_pkt_cnt_i);
int iSetCRX_PKT_CNT_O_crx_pkt_cnt_o(unsigned int ucrx_pkt_cnt_o);
int iSetCRYPTORX_IF_I_CNT_cryptorx_if_i_cnt(unsigned int ucryptorx_if_i_cnt);
int iSetCRX_BDSPLIT_LEN_I_crx_bdsplit_len_i(unsigned int ucrx_bdsplit_len_i);
int iSetCRX_BDSPLIT_LEN_O_crx_bdsplit_len_o(unsigned int ucrx_bdsplit_len_o);
int iSetCRX_PKT_CMB_LEN_O_crx_pkt_cmb_len_o(unsigned int ucrx_pkt_cmb_len_o);

/* Define the union csr_ctx_version_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cryptotx_version : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_version_u;

/* Define the union csr_ctx_int_vector_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_cpi_int_index : 24; /* [23:0] */
        u32 rsv_0 : 3;              /* [26:24] */
        u32 ctx_enable : 1;         /* [27] */
        u32 ctx_int_issue : 1;      /* [28] */
        u32 rsv_1 : 3;              /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_int_vector_u;

/* Define the union csr_ctx_int_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_int_data : 5;           /* [4:0] */
        u32 rsv_2 : 11;                 /* [15:5] */
        u32 ctx_program_csr_id_ro : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_int_u;

/* Define the union csr_ctx_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_int_en : 5;          /* [4:0] */
        u32 rsv_3 : 11;              /* [15:5] */
        u32 ctx_program_csr_id : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_int_en_u;

/* Define the union csr_ctx_top_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_top_err : 1;         /* [0] */
        u32 ctx_top_err_inj : 1;     /* [1] */
        u32 ctx_top_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_top_err_u;

/* Define the union csr_ctx_lp_gcm_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_gcm_err : 1;         /* [0] */
        u32 ctx_lp_gcm_err_inj : 1;     /* [1] */
        u32 ctx_lp_gcm_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_gcm_err_u;

/* Define the union csr_ctx_lp_cbc_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_cbc_err : 1;         /* [0] */
        u32 ctx_lp_cbc_err_inj : 1;     /* [1] */
        u32 ctx_lp_cbc_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_cbc_err_u;

/* Define the union csr_ctx_ec_xts_ec_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_xts_ec_err : 1;         /* [0] */
        u32 ctx_ec_xts_ec_err_inj : 1;     /* [1] */
        u32 ctx_ec_xts_ec_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_xts_ec_err_u;

/* Define the union csr_ctx_ec_xts_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_xts_err : 1;         /* [0] */
        u32 ctx_ec_xts_err_inj : 1;     /* [1] */
        u32 ctx_ec_xts_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_xts_err_u;

/* Define the union csr_ctx_tmout_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_tmout_cfg : 24; /* [23:0] */
        u32 rsv_4 : 8;          /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_tmout_cfg_u;

/* Define the union csr_ipsec_tx_crg_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 icg_en_ipsec_tx : 1;       /* [0] */
        u32 icg_en_ipsec_csr_tx : 1;   /* [1] */
        u32 icg_en_cbc_tx : 1;         /* [2] */
        u32 icg_en_gcm_tx : 1;         /* [3] */
        u32 rsv_5 : 4;                 /* [7:4] */
        u32 srst_req_ipsec_tx : 1;     /* [8] */
        u32 srst_req_ipsec_csr_tx : 1; /* [9] */
        u32 srst_req_cbc_tx : 1;       /* [10] */
        u32 srst_req_gcm_tx : 1;       /* [11] */
        u32 rsv_6 : 20;                /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_tx_crg_cfg_u;

/* Define the union csr_ctx_mem_init_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_mem_init : 1; /* [0] */
        u32 rsv_7 : 31;       /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_mem_init_u;

/* Define the union csr_ctx_mem_init_done_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_mem_init_done : 1; /* [0] */
        u32 rsv_8 : 31;            /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_mem_init_done_u;

/* Define the union csr_ctx_mem_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_mem_power_mode : 6; /* [5:0] */
        u32 ctx_tp_ram_tmod : 8;    /* [13:6] */
        u32 ctx_sp_ram_tmod : 7;    /* [20:14] */
        u32 ctx_ecc_bypass : 1;     /* [21] */
        u32 rsv_9 : 10;             /* [31:22] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_mem_ctrl_u;

/* Define the union csr_ctx_reg_cnt_clr_ce_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cnt_clr_ce : 1; /* [0] */
        u32 snap_en : 1;    /* [1] */
        u32 rsv_10 : 30;    /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_reg_cnt_clr_ce_u;

/* Define the union csr_ctx_lp_chx_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_gcm_ch_cfg : 5; /* [4:0] */
        u32 rsv_11 : 3;         /* [7:5] */
        u32 ctx_cbc_ch_cfg : 5; /* [12:8] */
        u32 rsv_12 : 3;         /* [15:13] */
        u32 ctx_rsa_ch_cfg : 5; /* [20:16] */
        u32 rsv_13 : 11;        /* [31:21] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_chx_cfg_u;

/* Define the union csr_ctx_ec_chx_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_xts_ec_ch_cfg : 5; /* [4:0] */
        u32 rsv_14 : 3;            /* [7:5] */
        u32 ctx_xts_ch_cfg : 5;    /* [12:8] */
        u32 rsv_15 : 3;            /* [15:13] */
        u32 ctx_ec_ch_cfg : 5;     /* [20:16] */
        u32 rsv_16 : 3;            /* [23:21] */
        u32 ctx_mhd_ch_cfg : 5;    /* [28:24] */
        u32 rsv_17 : 3;            /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_chx_cfg_u;

/* Define the union csr_ctx_necch_credit_o_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_necch_credit_o_cfg : 5; /* [4:0] */
        u32 rsv_18 : 27;                /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_necch_credit_o_cfg_u;

/* Define the union csr_ctx_ecch_credit_o_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ecch_credit_o_cfg : 5; /* [4:0] */
        u32 rsv_19 : 27;               /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ecch_credit_o_cfg_u;

/* Define the union csr_ctx_ctrl_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ctrl_rsv : 24; /* [23:0] */
        u32 rsv_20 : 8;        /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ctrl_rsv_u;

/* Define the union csr_ctx_stat_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_stat_rsv : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_stat_rsv_u;

/* Define the union csr_ctx_lp_ept_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_ept : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_ept_u;

/* Define the union csr_ctx_lp_full_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_full : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_full_u;

/* Define the union csr_ctx_ec_ept_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_ept : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_ept_u;

/* Define the union csr_ctx_ec_full_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_full : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_full_u;

/* Define the union csr_ctx_dft_mem_ctrl_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_dft_mem_ctrl_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_dft_mem_ctrl_0_u;

/* Define the union csr_ctx_dft_mem_ctrl_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_dft_mem_ctrl_1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_dft_mem_ctrl_1_u;

/* Define the union csr_ctx_dft_mem_ctrl_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_dft_mem_ctrl_2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_dft_mem_ctrl_2_u;

/* Define the union csr_ctx_dft_mem_ctrl_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_dft_mem_ctrl_3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_dft_mem_ctrl_3_u;

/* Define the union csr_ctx_dft_mem_ctrl_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_dft_mem_ctrl_4 : 6; /* [5:0] */
        u32 rsv_21 : 26;            /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_dft_mem_ctrl_4_u;

/* Define the union csr_ctx_top_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_top_int_en : 8; /* [7:0] */
        u32 rsv_22 : 24;        /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_top_int_en_u;

/* Define the union csr_ctx_top_alm_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_top_alm : 8; /* [7:0] */
        u32 rsv_23 : 24;     /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_top_alm_u;

/* Define the union csr_ctx_credit_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_gcm_credit_i_err : 1;    /* [0] */
        u32 ctx_cbc_credit_i_err : 1;    /* [1] */
        u32 ctx_rsa_credit_i_err : 1;    /* [2] */
        u32 ctx_xts_ec_credit_i_err : 1; /* [3] */
        u32 ctx_xts_credit_i_err : 1;    /* [4] */
        u32 ctx_ec_credit_i_err : 1;     /* [5] */
        u32 ctx_mhd_credit_i_err : 1;    /* [6] */
        u32 ctx_byp_credit_i_err : 1;    /* [7] */
        u32 rsv_24 : 24;                 /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_credit_err_u;

/* Define the union csr_ctx_inn_credit_i_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_gcm_inn_credit_i_err : 1;    /* [0] */
        u32 ctx_cbc_inn_credit_i_err : 1;    /* [1] */
        u32 ctx_rsa_inn_credit_i_err : 1;    /* [2] */
        u32 ctx_xts_ec_inn_credit_i_err : 1; /* [3] */
        u32 ctx_xts_inn_credit_i_err : 1;    /* [4] */
        u32 rsv_25 : 27;                     /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_inn_credit_i_err_u;

/* Define the union csr_ctx_lp_pkt_cnt_i_pre_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_pkt_cnt_i_pre : 8; /* [7:0] */
        u32 rsv_26 : 24;              /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_pkt_cnt_i_pre_u;

/* Define the union csr_ctx_ec_pkt_cnt_i_pre_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_pkt_cnt_i_pre : 8; /* [7:0] */
        u32 rsv_27 : 24;              /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_pkt_cnt_i_pre_u;

/* Define the union csr_ctx_bd_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_bd_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_bd_err_cnt_u;

/* Define the union csr_ctx_len_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_len_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_len_err_cnt_u;

/* Define the union csr_ctx_lp_pkt_cnt_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_pkt_cnt_i : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_pkt_cnt_i_u;

/* Define the union csr_ctx_ec_pkt_cnt_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_pkt_cnt_i : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_pkt_cnt_i_u;

/* Define the union csr_ctx_lp_pkt_cnt_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_lp_pkt_cnt_o : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_lp_pkt_cnt_o_u;

/* Define the union csr_ctx_ec_pkt_cnt_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_ec_pkt_cnt_o : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_ec_pkt_cnt_o_u;

/* Define the union csr_cryptotx_if_i_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cryptotx_if_i_cnt : 16; /* [15:0] */
        u32 rsv_28 : 16;            /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cryptotx_if_i_cnt_u;

/* Define the union csr_ctx_bdsplit_len_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_bdsplit_len_i : 12; /* [11:0] */
        u32 rsv_29 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_bdsplit_len_i_u;

/* Define the union csr_ctx_bdsplit_len_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_bdsplit_len_o : 12; /* [11:0] */
        u32 rsv_30 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_bdsplit_len_o_u;

/* Define the union csr_ctx_pkt_cmb_len_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ctx_pkt_cmb_len_o : 12; /* [11:0] */
        u32 rsv_31 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ctx_pkt_cmb_len_o_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_ctx_version_u ctx_version;                       /* 0 */
    volatile csr_ctx_int_vector_u ctx_int_vector;                 /* 60 */
    volatile csr_ctx_int_u ctx_int;                               /* 64 */
    volatile csr_ctx_int_en_u ctx_int_en;                         /* 68 */
    volatile csr_ctx_top_err_u ctx_top_err;                       /* 6C */
    volatile csr_ctx_lp_gcm_err_u ctx_lp_gcm_err;                 /* 70 */
    volatile csr_ctx_lp_cbc_err_u ctx_lp_cbc_err;                 /* 74 */
    volatile csr_ctx_ec_xts_ec_err_u ctx_ec_xts_ec_err;           /* 78 */
    volatile csr_ctx_ec_xts_err_u ctx_ec_xts_err;                 /* 7C */
    volatile csr_ctx_tmout_cfg_u ctx_tmout_cfg;                   /* 80 */
    volatile csr_ipsec_tx_crg_cfg_u ipsec_tx_crg_cfg;             /* 84 */
    volatile csr_ctx_mem_init_u ctx_mem_init;                     /* 100 */
    volatile csr_ctx_mem_init_done_u ctx_mem_init_done;           /* 104 */
    volatile csr_ctx_mem_ctrl_u ctx_mem_ctrl;                     /* 108 */
    volatile csr_ctx_reg_cnt_clr_ce_u ctx_reg_cnt_clr_ce;         /* 10C */
    volatile csr_ctx_lp_chx_cfg_u ctx_lp_chx_cfg;                 /* 120 */
    volatile csr_ctx_ec_chx_cfg_u ctx_ec_chx_cfg;                 /* 124 */
    volatile csr_ctx_necch_credit_o_cfg_u ctx_necch_credit_o_cfg; /* 128 */
    volatile csr_ctx_ecch_credit_o_cfg_u ctx_ecch_credit_o_cfg;   /* 12C */
    volatile csr_ctx_ctrl_rsv_u ctx_ctrl_rsv;                     /* 130 */
    volatile csr_ctx_stat_rsv_u ctx_stat_rsv;                     /* 134 */
    volatile csr_ctx_lp_ept_u ctx_lp_ept;                         /* 140 */
    volatile csr_ctx_lp_full_u ctx_lp_full;                       /* 144 */
    volatile csr_ctx_ec_ept_u ctx_ec_ept;                         /* 148 */
    volatile csr_ctx_ec_full_u ctx_ec_full;                       /* 14C */
    volatile csr_ctx_dft_mem_ctrl_0_u ctx_dft_mem_ctrl_0;         /* 150 */
    volatile csr_ctx_dft_mem_ctrl_1_u ctx_dft_mem_ctrl_1;         /* 154 */
    volatile csr_ctx_dft_mem_ctrl_2_u ctx_dft_mem_ctrl_2;         /* 158 */
    volatile csr_ctx_dft_mem_ctrl_3_u ctx_dft_mem_ctrl_3;         /* 15C */
    volatile csr_ctx_dft_mem_ctrl_4_u ctx_dft_mem_ctrl_4;         /* 160 */
    volatile csr_ctx_top_int_en_u ctx_top_int_en;                 /* 178 */
    volatile csr_ctx_top_alm_u ctx_top_alm;                       /* 17C */
    volatile csr_ctx_credit_err_u ctx_credit_err;                 /* 200 */
    volatile csr_ctx_inn_credit_i_err_u ctx_inn_credit_i_err;     /* 204 */
    volatile csr_ctx_lp_pkt_cnt_i_pre_u ctx_lp_pkt_cnt_i_pre[3];  /* 310 */
    volatile csr_ctx_ec_pkt_cnt_i_pre_u ctx_ec_pkt_cnt_i_pre[5];  /* 320 */
    volatile csr_ctx_bd_err_cnt_u ctx_bd_err_cnt;                 /* 340 */
    volatile csr_ctx_len_err_cnt_u ctx_len_err_cnt;               /* 344 */
    volatile csr_ctx_lp_pkt_cnt_i_u ctx_lp_pkt_cnt_i[3];          /* 210 */
    volatile csr_ctx_ec_pkt_cnt_i_u ctx_ec_pkt_cnt_i[5];          /* 220 */
    volatile csr_ctx_lp_pkt_cnt_o_u ctx_lp_pkt_cnt_o[3];          /* 240 */
    volatile csr_ctx_ec_pkt_cnt_o_u ctx_ec_pkt_cnt_o[5];          /* 260 */
    volatile csr_cryptotx_if_i_cnt_u cryptotx_if_i_cnt[5];        /* 280 */
    volatile csr_ctx_bdsplit_len_i_u ctx_bdsplit_len_i[5];        /* 2A0 */
    volatile csr_ctx_bdsplit_len_o_u ctx_bdsplit_len_o[5];        /* 2C0 */
    volatile csr_ctx_pkt_cmb_len_o_u ctx_pkt_cmb_len_o[5];        /* 2E0 */
} S_cryptotx_inout_csr_REGS_TYPE;

/* Declare the struct pointor of the module cryptotx_inout_csr */
extern volatile S_cryptotx_inout_csr_REGS_TYPE *gopcryptotx_inout_csrAllReg;

/* Declare the functions that set the member value */
int iSetCTX_VERSION_cryptotx_version(unsigned int ucryptotx_version);
int iSetCTX_INT_VECTOR_ctx_cpi_int_index(unsigned int uctx_cpi_int_index);
int iSetCTX_INT_VECTOR_ctx_enable(unsigned int uctx_enable);
int iSetCTX_INT_VECTOR_ctx_int_issue(unsigned int uctx_int_issue);
int iSetCTX_INT_ctx_int_data(unsigned int uctx_int_data);
int iSetCTX_INT_ctx_program_csr_id_ro(unsigned int uctx_program_csr_id_ro);
int iSetCTX_INT_EN_ctx_int_en(unsigned int uctx_int_en);
int iSetCTX_INT_EN_ctx_program_csr_id(unsigned int uctx_program_csr_id);
int iSetCTX_TOP_ERR_ctx_top_err(unsigned int uctx_top_err);
int iSetCTX_TOP_ERR_ctx_top_err_inj(unsigned int uctx_top_err_inj);
int iSetCTX_TOP_ERR_ctx_top_err_sticky(unsigned int uctx_top_err_sticky);
int iSetCTX_LP_GCM_ERR_ctx_lp_gcm_err(unsigned int uctx_lp_gcm_err);
int iSetCTX_LP_GCM_ERR_ctx_lp_gcm_err_inj(unsigned int uctx_lp_gcm_err_inj);
int iSetCTX_LP_GCM_ERR_ctx_lp_gcm_err_sticky(unsigned int uctx_lp_gcm_err_sticky);
int iSetCTX_LP_CBC_ERR_ctx_lp_cbc_err(unsigned int uctx_lp_cbc_err);
int iSetCTX_LP_CBC_ERR_ctx_lp_cbc_err_inj(unsigned int uctx_lp_cbc_err_inj);
int iSetCTX_LP_CBC_ERR_ctx_lp_cbc_err_sticky(unsigned int uctx_lp_cbc_err_sticky);
int iSetCTX_EC_XTS_EC_ERR_ctx_ec_xts_ec_err(unsigned int uctx_ec_xts_ec_err);
int iSetCTX_EC_XTS_EC_ERR_ctx_ec_xts_ec_err_inj(unsigned int uctx_ec_xts_ec_err_inj);
int iSetCTX_EC_XTS_EC_ERR_ctx_ec_xts_ec_err_sticky(unsigned int uctx_ec_xts_ec_err_sticky);
int iSetCTX_EC_XTS_ERR_ctx_ec_xts_err(unsigned int uctx_ec_xts_err);
int iSetCTX_EC_XTS_ERR_ctx_ec_xts_err_inj(unsigned int uctx_ec_xts_err_inj);
int iSetCTX_EC_XTS_ERR_ctx_ec_xts_err_sticky(unsigned int uctx_ec_xts_err_sticky);
int iSetCTX_TMOUT_CFG_ctx_tmout_cfg(unsigned int uctx_tmout_cfg);
int iSetIPSEC_TX_CRG_CFG_icg_en_ipsec_tx(unsigned int uicg_en_ipsec_tx);
int iSetIPSEC_TX_CRG_CFG_icg_en_ipsec_csr_tx(unsigned int uicg_en_ipsec_csr_tx);
int iSetIPSEC_TX_CRG_CFG_icg_en_cbc_tx(unsigned int uicg_en_cbc_tx);
int iSetIPSEC_TX_CRG_CFG_icg_en_gcm_tx(unsigned int uicg_en_gcm_tx);
int iSetIPSEC_TX_CRG_CFG_srst_req_ipsec_tx(unsigned int usrst_req_ipsec_tx);
int iSetIPSEC_TX_CRG_CFG_srst_req_ipsec_csr_tx(unsigned int usrst_req_ipsec_csr_tx);
int iSetIPSEC_TX_CRG_CFG_srst_req_cbc_tx(unsigned int usrst_req_cbc_tx);
int iSetIPSEC_TX_CRG_CFG_srst_req_gcm_tx(unsigned int usrst_req_gcm_tx);
int iSetCTX_MEM_INIT_ctx_mem_init(unsigned int uctx_mem_init);
int iSetCTX_MEM_INIT_DONE_ctx_mem_init_done(unsigned int uctx_mem_init_done);
int iSetCTX_MEM_CTRL_ctx_mem_power_mode(unsigned int uctx_mem_power_mode);
int iSetCTX_MEM_CTRL_ctx_tp_ram_tmod(unsigned int uctx_tp_ram_tmod);
int iSetCTX_MEM_CTRL_ctx_sp_ram_tmod(unsigned int uctx_sp_ram_tmod);
int iSetCTX_MEM_CTRL_ctx_ecc_bypass(unsigned int uctx_ecc_bypass);
int iSetCTX_REG_CNT_CLR_CE_cnt_clr_ce(unsigned int ucnt_clr_ce);
int iSetCTX_REG_CNT_CLR_CE_snap_en(unsigned int usnap_en);
int iSetCTX_LP_CHX_CFG_ctx_gcm_ch_cfg(unsigned int uctx_gcm_ch_cfg);
int iSetCTX_LP_CHX_CFG_ctx_cbc_ch_cfg(unsigned int uctx_cbc_ch_cfg);
int iSetCTX_LP_CHX_CFG_ctx_rsa_ch_cfg(unsigned int uctx_rsa_ch_cfg);
int iSetCTX_EC_CHX_CFG_ctx_xts_ec_ch_cfg(unsigned int uctx_xts_ec_ch_cfg);
int iSetCTX_EC_CHX_CFG_ctx_xts_ch_cfg(unsigned int uctx_xts_ch_cfg);
int iSetCTX_EC_CHX_CFG_ctx_ec_ch_cfg(unsigned int uctx_ec_ch_cfg);
int iSetCTX_EC_CHX_CFG_ctx_mhd_ch_cfg(unsigned int uctx_mhd_ch_cfg);
int iSetCTX_NECCH_CREDIT_O_CFG_ctx_necch_credit_o_cfg(unsigned int uctx_necch_credit_o_cfg);
int iSetCTX_ECCH_CREDIT_O_CFG_ctx_ecch_credit_o_cfg(unsigned int uctx_ecch_credit_o_cfg);
int iSetCTX_CTRL_RSV_ctx_ctrl_rsv(unsigned int uctx_ctrl_rsv);
int iSetCTX_STAT_RSV_ctx_stat_rsv(unsigned int uctx_stat_rsv);
int iSetCTX_LP_EPT_ctx_lp_ept(unsigned int uctx_lp_ept);
int iSetCTX_LP_FULL_ctx_lp_full(unsigned int uctx_lp_full);
int iSetCTX_EC_EPT_ctx_ec_ept(unsigned int uctx_ec_ept);
int iSetCTX_EC_FULL_ctx_ec_full(unsigned int uctx_ec_full);
int iSetCTX_DFT_MEM_CTRL_0_ctx_dft_mem_ctrl_0(unsigned int uctx_dft_mem_ctrl_0);
int iSetCTX_DFT_MEM_CTRL_1_ctx_dft_mem_ctrl_1(unsigned int uctx_dft_mem_ctrl_1);
int iSetCTX_DFT_MEM_CTRL_2_ctx_dft_mem_ctrl_2(unsigned int uctx_dft_mem_ctrl_2);
int iSetCTX_DFT_MEM_CTRL_3_ctx_dft_mem_ctrl_3(unsigned int uctx_dft_mem_ctrl_3);
int iSetCTX_DFT_MEM_CTRL_4_ctx_dft_mem_ctrl_4(unsigned int uctx_dft_mem_ctrl_4);
int iSetCTX_TOP_INT_EN_ctx_top_int_en(unsigned int uctx_top_int_en);
int iSetCTX_TOP_ALM_ctx_top_alm(unsigned int uctx_top_alm);
int iSetCTX_CREDIT_ERR_ctx_gcm_credit_i_err(unsigned int uctx_gcm_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_cbc_credit_i_err(unsigned int uctx_cbc_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_rsa_credit_i_err(unsigned int uctx_rsa_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_xts_ec_credit_i_err(unsigned int uctx_xts_ec_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_xts_credit_i_err(unsigned int uctx_xts_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_ec_credit_i_err(unsigned int uctx_ec_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_mhd_credit_i_err(unsigned int uctx_mhd_credit_i_err);
int iSetCTX_CREDIT_ERR_ctx_byp_credit_i_err(unsigned int uctx_byp_credit_i_err);
int iSetCTX_INN_CREDIT_I_ERR_ctx_gcm_inn_credit_i_err(unsigned int uctx_gcm_inn_credit_i_err);
int iSetCTX_INN_CREDIT_I_ERR_ctx_cbc_inn_credit_i_err(unsigned int uctx_cbc_inn_credit_i_err);
int iSetCTX_INN_CREDIT_I_ERR_ctx_rsa_inn_credit_i_err(unsigned int uctx_rsa_inn_credit_i_err);
int iSetCTX_INN_CREDIT_I_ERR_ctx_xts_ec_inn_credit_i_err(unsigned int uctx_xts_ec_inn_credit_i_err);
int iSetCTX_INN_CREDIT_I_ERR_ctx_xts_inn_credit_i_err(unsigned int uctx_xts_inn_credit_i_err);
int iSetCTX_LP_PKT_CNT_I_PRE_ctx_lp_pkt_cnt_i_pre(unsigned int uctx_lp_pkt_cnt_i_pre);
int iSetCTX_EC_PKT_CNT_I_PRE_ctx_ec_pkt_cnt_i_pre(unsigned int uctx_ec_pkt_cnt_i_pre);
int iSetCTX_BD_ERR_CNT_ctx_bd_err_cnt(unsigned int uctx_bd_err_cnt);
int iSetCTX_LEN_ERR_CNT_ctx_len_err_cnt(unsigned int uctx_len_err_cnt);
int iSetCTX_LP_PKT_CNT_I_ctx_lp_pkt_cnt_i(unsigned int uctx_lp_pkt_cnt_i);
int iSetCTX_EC_PKT_CNT_I_ctx_ec_pkt_cnt_i(unsigned int uctx_ec_pkt_cnt_i);
int iSetCTX_LP_PKT_CNT_O_ctx_lp_pkt_cnt_o(unsigned int uctx_lp_pkt_cnt_o);
int iSetCTX_EC_PKT_CNT_O_ctx_ec_pkt_cnt_o(unsigned int uctx_ec_pkt_cnt_o);
int iSetCRYPTOTX_IF_I_CNT_cryptotx_if_i_cnt(unsigned int ucryptotx_if_i_cnt);
int iSetCTX_BDSPLIT_LEN_I_ctx_bdsplit_len_i(unsigned int uctx_bdsplit_len_i);
int iSetCTX_BDSPLIT_LEN_O_ctx_bdsplit_len_o(unsigned int uctx_bdsplit_len_o);
int iSetCTX_PKT_CMB_LEN_O_ctx_pkt_cmb_len_o(unsigned int uctx_pkt_cmb_len_o);

/* Define the union csr_hpre_core_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_core_enb0 : 1; /* [0] */
        u32 hpre_core_enb1 : 1; /* [1] */
        u32 hpre_core_enb2 : 1; /* [2] */
        u32 hpre_core_enb3 : 1; /* [3] */
        u32 rsv_0 : 28;         /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_enb_u;

/* Define the union csr_hpre_cluster_dyn_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_cluster_dyn_enb : 1; /* [0] */
        u32 rsv_1 : 31;               /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cluster_dyn_enb_u;

/* Define the union csr_hpre_core_ini_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_core_ini_cfg : 1; /* [0] */
        u32 rsv_2 : 31;            /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_ini_cfg_u;

/* Define the union csr_hpre_core_ini_status_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_core_status0 : 1; /* [0] */
        u32 hpre_core_status1 : 1; /* [1] */
        u32 hpre_core_status2 : 1; /* [2] */
        u32 hpre_core_status3 : 1; /* [3] */
        u32 rsv_3 : 28;            /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_ini_status_u;

/* Define the union csr_hpre_err_bit_inject_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 err_bit_inject_en : 1; /* [0] */
        u32 rsv_4 : 31;            /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_err_bit_inject_en_u;

/* Define the union csr_hpre_core_shb_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 shb_num : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_shb_cfg_u;

/* Define the union csr_hpre_core_shb_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 shb_warning : 4; /* [3:0] */
        u32 rsv_5 : 28;      /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_shb_st_u;

/* Define the union csr_hpre_core_idle_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 core_arb_st : 4; /* [3:0] */
        u32 rsv_6 : 28;      /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_idle_st_u;

/* Define the union csr_hpre_core_status_inquire_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_core_status_inquire_req : 1;      /* [0] */
        u32 hpre_core_status_inquire_content : 11; /* [11:1] */
        u32 core_idx : 2;                          /* [13:12] */
        u32 rsv_7 : 18;                            /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_status_inquire_u;

/* Define the union csr_hpre_core_status_result_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_core_status_result : 18;    /* [17:0] */
        u32 result_core_idx : 2;             /* [19:18] */
        u32 latest_inquire_content : 11;     /* [30:20] */
        u32 hpre_core_status_result_rdy : 1; /* [31] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_status_result_u;

/* Define the union csr_hpre_core_err_bit_inject_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ej_core_idx : 2;      /* [1:0] */
        u32 ej_cmd : 4;           /* [5:2] */
        u32 ram_bit0_inject : 13; /* [18:6] */
        u32 ram_bit1_inject : 13; /* [31:19] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_core_err_bit_inject_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_hpre_core_enb_u hpre_core_enb;                       /* 4 */
    volatile csr_hpre_cluster_dyn_enb_u hpre_cluster_dyn_enb;         /* 10 */
    volatile csr_hpre_core_ini_cfg_u hpre_core_ini_cfg;               /* 20 */
    volatile csr_hpre_core_ini_status_u hpre_core_ini_status;         /* 80 */
    volatile csr_hpre_err_bit_inject_en_u hpre_err_bit_inject_en;     /* 84 */
    volatile csr_hpre_core_shb_cfg_u hpre_core_shb_cfg;               /* 88 */
    volatile csr_hpre_core_shb_st_u hpre_core_shb_st;                 /* 8C */
    volatile csr_hpre_core_idle_st_u hpre_core_idle_st;               /* 90 */
    volatile csr_hpre_core_status_inquire_u hpre_core_status_inquire; /* 100 */
    volatile csr_hpre_core_status_result_u hpre_core_status_result;   /* 104 */
    volatile csr_hpre_core_err_bit_inject_u hpre_core_err_bit_inject; /* 108 */
} S_hpre_cluster_REGS_TYPE;

/* Declare the struct pointor of the module hpre_cluster */
extern volatile S_hpre_cluster_REGS_TYPE *gophpre_clusterAllReg;

/* Declare the functions that set the member value */
int iSetHPRE_CORE_ENB_hpre_core_enb0(unsigned int uhpre_core_enb0);
int iSetHPRE_CORE_ENB_hpre_core_enb1(unsigned int uhpre_core_enb1);
int iSetHPRE_CORE_ENB_hpre_core_enb2(unsigned int uhpre_core_enb2);
int iSetHPRE_CORE_ENB_hpre_core_enb3(unsigned int uhpre_core_enb3);
int iSetHPRE_CLUSTER_DYN_ENB_hpre_cluster_dyn_enb(unsigned int uhpre_cluster_dyn_enb);
int iSetHPRE_CORE_INI_CFG_hpre_core_ini_cfg(unsigned int uhpre_core_ini_cfg);
int iSetHPRE_CORE_INI_STATUS_hpre_core_status0(unsigned int uhpre_core_status0);
int iSetHPRE_CORE_INI_STATUS_hpre_core_status1(unsigned int uhpre_core_status1);
int iSetHPRE_CORE_INI_STATUS_hpre_core_status2(unsigned int uhpre_core_status2);
int iSetHPRE_CORE_INI_STATUS_hpre_core_status3(unsigned int uhpre_core_status3);
int iSetHPRE_ERR_BIT_INJECT_EN_err_bit_inject_en(unsigned int uerr_bit_inject_en);
int iSetHPRE_CORE_SHB_CFG_shb_num(unsigned int ushb_num);
int iSetHPRE_CORE_SHB_ST_shb_warning(unsigned int ushb_warning);
int iSetHPRE_CORE_IDLE_ST_core_arb_st(unsigned int ucore_arb_st);
int iSetHPRE_CORE_STATUS_INQUIRE_hpre_core_status_inquire_req(unsigned int uhpre_core_status_inquire_req);
int iSetHPRE_CORE_STATUS_INQUIRE_hpre_core_status_inquire_content(unsigned int uhpre_core_status_inquire_content);
int iSetHPRE_CORE_STATUS_INQUIRE_core_idx(unsigned int ucore_idx);
int iSetHPRE_CORE_STATUS_RESULT_hpre_core_status_result(unsigned int uhpre_core_status_result);
int iSetHPRE_CORE_STATUS_RESULT_result_core_idx(unsigned int uresult_core_idx);
int iSetHPRE_CORE_STATUS_RESULT_latest_inquire_content(unsigned int ulatest_inquire_content);
int iSetHPRE_CORE_STATUS_RESULT_hpre_core_status_result_rdy(unsigned int uhpre_core_status_result_rdy);
int iSetHPRE_CORE_ERR_BIT_INJECT_ej_core_idx(unsigned int uej_core_idx);
int iSetHPRE_CORE_ERR_BIT_INJECT_ej_cmd(unsigned int uej_cmd);
int iSetHPRE_CORE_ERR_BIT_INJECT_ram_bit0_inject(unsigned int uram_bit0_inject);
int iSetHPRE_CORE_ERR_BIT_INJECT_ram_bit1_inject(unsigned int uram_bit1_inject);

/* Define the union csr_hpre_common_cnt_clr_ce_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cnt_clr_ce : 1; /* [0] */
        u32 rsv_0 : 31;     /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_common_cnt_clr_ce_u;

/* Define the union csr_hpre_cfg_axqos_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 awqos : 4;  /* [3:0] */
        u32 arqos : 4;  /* [7:4] */
        u32 rsv_0 : 24; /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cfg_axqos_u;

/* Define the union csr_hpre_cfg_axcache_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 awcache : 4; /* [3:0] */
        u32 arcache : 4; /* [7:4] */
        u32 rsv_1 : 24;  /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cfg_axcache_u;

/* Define the union csr_hpre_cfg_rdchn_ini_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rdchn_ini : 1; /* [0] */
        u32 rsv_2 : 31;    /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cfg_rdchn_ini_u;

/* Define the union csr_hpre_cfg_awuser_fp_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 aw_fp1_enb : 1; /* [0] */
        u32 rsv_3 : 31;     /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cfg_awuser_fp_cfg_u;

/* Define the union csr_hpre_cfg_bd_endian_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 bd_endian : 2; /* [1:0] */
        u32 rsv_4 : 30;    /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_cfg_bd_endian_u;

/* Define the union csr_hpre_ecc_bypass_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ecc_bypass : 1; /* [0] */
        u32 rsv_5 : 31;     /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_ecc_bypass_u;

/* Define the union csr_hpre_ras_int_width_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ras_int_width : 10; /* [9:0] */
        u32 rsv_6 : 22;         /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_ras_int_width_cfg_u;

/* Define the union csr_hpre_poison_bypass_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rd_poison_bypass : 1; /* [0] */
        u32 wr_poison_bypass : 1; /* [1] */
        u32 rsv_7 : 30;           /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_poison_bypass_u;

/* Define the union csr_hpre_bd_aruser_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 bd_aruser_snpattr : 1;      /* [0] */
        u32 bd_aruser_cmd_type : 3;     /* [3:1] */
        u32 bd_aruser_type : 2;         /* [5:4] */
        u32 bd_aruser_cleaninvalid : 1; /* [6] */
        u32 bd_aruser_fna : 1;          /* [7] */
        u32 bd_aruser_fa : 1;           /* [8] */
        u32 bd_aruser_ssv : 1;          /* [9] */
        u32 rsv_8 : 22;                 /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_bd_aruser_cfg_u;

/* Define the union csr_hpre_bd_awuser_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 bd_awuser_snpattr : 1;  /* [0] */
        u32 bd_awuser_cmd_type : 3; /* [3:1] */
        u32 bd_awuser_type : 2;     /* [5:4] */
        u32 bd_awuser_fp1_enb : 1;  /* [6] */
        u32 bd_awuser_fna : 1;      /* [7] */
        u32 bd_awuser_fa : 1;       /* [8] */
        u32 bd_awuser_ssv : 1;      /* [9] */
        u32 rsv_9 : 22;             /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_bd_awuser_cfg_u;

/* Define the union csr_hpre_types_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 task_type_enb : 1; /* [0] */
        u32 rsv_10 : 31;       /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_types_enb_u;

/* Define the union csr_hpre_data_aruser_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 data_aruser_snpattr : 1;      /* [0] */
        u32 data_aruser_cmd_type : 3;     /* [3:1] */
        u32 data_aruser_type : 2;         /* [5:4] */
        u32 data_aruser_cleaninvalid : 1; /* [6] */
        u32 data_aruser_fna : 1;          /* [7] */
        u32 data_aruser_fa : 1;           /* [8] */
        u32 data_aruser_ssv : 1;          /* [9] */
        u32 rsv_11 : 22;                  /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_data_aruser_cfg_u;

/* Define the union csr_hpre_data_awuser_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 data_awuser_snpattr : 1;  /* [0] */
        u32 data_awuser_cmd_type : 3; /* [3:1] */
        u32 data_awuser_type : 2;     /* [5:4] */
        u32 data_awuser_fp1_enb : 1;  /* [6] */
        u32 data_awuser_fna : 1;      /* [7] */
        u32 data_awuser_fa : 1;       /* [8] */
        u32 data_awuser_ssv : 1;      /* [9] */
        u32 rsv_12 : 22;              /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_data_awuser_cfg_u;

/* Define the union csr_hpre_am_ooo_shutdown_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 am_ooo_shutdown_enb : 1; /* [0] */
        u32 rsv_13 : 31;             /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_am_ooo_shutdown_enb_u;

/* Define the union csr_hpre_hac_int_msk_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 core_ecc_1bit_err_msk : 1;    /* [0] */
        u32 core_ecc_2bit_err_msk : 1;    /* [1] */
        u32 dat_wb_poison_msk : 1;        /* [2] */
        u32 dat_rd_poison_msk : 1;        /* [3] */
        u32 bd_rd_poison_msk : 1;         /* [4] */
        u32 ooo_ecc_2bit_err_msk : 1;     /* [5] */
        u32 cluster1_shb_timeout_msk : 1; /* [6] */
        u32 cluster2_shb_timeout_msk : 1; /* [7] */
        u32 cluster3_shb_timeout_msk : 1; /* [8] */
        u32 cluster4_shb_timeout_msk : 1; /* [9] */
        u32 ooo_rdrsp_err_msk : 6;        /* [15:10] */
        u32 ooo_wrrsp_err_msk : 6;        /* [21:16] */
        u32 qmv2_ecc_1bit_err_msk : 1;    /* [22] */
        u32 qmv2_ecc_2bit_err_msk : 1;    /* [23] */
        u32 datrd_ecc_1bit_err_msk : 1;   /* [24] */
        u32 datrd_ecc_2bit_err_msk : 1;   /* [25] */
        u32 rsv_14 : 6;                   /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_int_msk_u;

/* Define the union csr_hpre_ras_ecc1bit_th_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_ras_ecc1bit_th : 16; /* [15:0] */
        u32 rsv_15 : 16;              /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_ras_ecc1bit_th_u;

/* Define the union csr_hpre_hac_ras_ce_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hac_ras_ce_enb : 26; /* [25:0] */
        u32 rsv_16 : 6;          /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_ce_enb_u;

/* Define the union csr_hpre_hac_ras_nfe_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hac_ras_nfe_enb : 26; /* [25:0] */
        u32 rsv_17 : 6;           /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_nfe_enb_u;

/* Define the union csr_hpre_hac_ras_fe_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hac_ras_fe_enb : 26; /* [25:0] */
        u32 rsv_18 : 6;          /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_fe_enb_u;

/* Define the union csr_hpre_hac_int_set_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 core_ecc_1bit_err_int_set : 1;    /* [0] */
        u32 core_ecc_2bit_err_int_set : 1;    /* [1] */
        u32 dat_wb_poison_int_set : 1;        /* [2] */
        u32 dat_rd_poison_int_set : 1;        /* [3] */
        u32 bd_rd_poison_int_set : 1;         /* [4] */
        u32 ooo_ecc_2bit_err_int_set : 1;     /* [5] */
        u32 cluster1_shb_timeout_int_set : 1; /* [6] */
        u32 cluster2_shb_timeout_int_set : 1; /* [7] */
        u32 cluster3_shb_timeout_int_set : 1; /* [8] */
        u32 cluster4_shb_timeout_int_set : 1; /* [9] */
        u32 ooo_rdrsp_err_int_set : 6;        /* [15:10] */
        u32 ooo_wrrsp_err_int_set : 6;        /* [21:16] */
        u32 qmv2_ecc_1bit_err_int_set : 1;    /* [22] */
        u32 qmv2_ecc_2bit_err_int_set : 1;    /* [23] */
        u32 datrd_ecc_1bit_err_int_set : 1;   /* [24] */
        u32 datrd_ecc_2bit_err_int_set : 1;   /* [25] */
        u32 rsv_19 : 6;                       /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_int_set_u;

/* Define the union csr_hpre_hac_rint_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 core_ecc_1bit_err_rint : 1;    /* [0] */
        u32 core_ecc_2bit_err_rint : 1;    /* [1] */
        u32 dat_wb_poison_rint : 1;        /* [2] */
        u32 dat_rd_poison_rint : 1;        /* [3] */
        u32 bd_rd_poison_rint : 1;         /* [4] */
        u32 ooo_ecc_2bit_err_rint : 1;     /* [5] */
        u32 cluster1_shb_timeout_rint : 1; /* [6] */
        u32 cluster2_shb_timeout_rint : 1; /* [7] */
        u32 cluster3_shb_timeout_rint : 1; /* [8] */
        u32 cluster4_shb_timeout_rint : 1; /* [9] */
        u32 ooo_rdrsp_err_rint : 6;        /* [15:10] */
        u32 ooo_wrrsp_err_rint : 6;        /* [21:16] */
        u32 qmv2_ecc_1bit_err_rint : 1;    /* [22] */
        u32 qmv2_ecc_2bit_err_rint : 1;    /* [23] */
        u32 datrd_ecc_1bit_err_rint : 1;   /* [24] */
        u32 datrd_ecc_2bit_err_rint : 1;   /* [25] */
        u32 rsv_20 : 6;                    /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_rint_u;

/* Define the union csr_hpre_hac_int_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 core_ecc_1bit_err_int_st : 1;    /* [0] */
        u32 core_ecc_2bit_err_int_st : 1;    /* [1] */
        u32 dat_wb_poison_int_st : 1;        /* [2] */
        u32 dat_rd_poison_int_st : 1;        /* [3] */
        u32 bd_rd_poison_int_st : 1;         /* [4] */
        u32 ooo_ecc_2bit_err_int_st : 1;     /* [5] */
        u32 cluster1_shb_timeout_int_st : 1; /* [6] */
        u32 cluster2_shb_timeout_int_st : 1; /* [7] */
        u32 cluster3_shb_timeout_int_st : 1; /* [8] */
        u32 cluster4_shb_timeout_int_st : 1; /* [9] */
        u32 ooo_rdrsp_err_int_st : 6;        /* [15:10] */
        u32 ooo_wrrsp_err_int_st : 6;        /* [21:16] */
        u32 qmv2_ecc_1bit_err_int_st : 1;    /* [22] */
        u32 qmv2_ecc_2bit_err_int_st : 1;    /* [23] */
        u32 datrd_ecc_1bit_err_int_st : 1;   /* [24] */
        u32 datrd_ecc_2bit_err_int_st : 1;   /* [25] */
        u32 rsv_21 : 6;                      /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_int_st_u;

/* Define the union csr_hpre_fifo_afull_his1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dat_rd_chn_fifo_afull_his : 4; /* [3:0] */
        u32 rsv_22 : 28;                   /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_afull_his1_u;

/* Define the union csr_hpre_fifo_afull_his2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dat_wb_chn_fifo_afull_his : 16; /* [15:0] */
        u32 rsv_23 : 16;                    /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_afull_his2_u;

/* Define the union csr_hpre_fifo_afull_his3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rdtn_fifo_afull_his : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_afull_his3_u;

/* Define the union csr_hpre_fifo_full_his1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 data_rd_chn_fifo_full_his : 4; /* [3:0] */
        u32 rsv_24 : 28;                   /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_full_his1_u;

/* Define the union csr_hpre_fifo_full_his2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dat_wb_chn_fifo_full_his : 16; /* [15:0] */
        u32 rsv_25 : 16;                   /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_full_his2_u;

/* Define the union csr_hpre_fifo_full_his3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rdtn_fifo_full_his : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_full_his3_u;

/* Define the union csr_hpre_fifo_empty_st1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dat_rd_chn_fifo_empty : 4; /* [3:0] */
        u32 rsv_26 : 28;               /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_empty_st1_u;

/* Define the union csr_hpre_fifo_empty_st2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dat_wb_chn_fifo_empty : 16; /* [15:0] */
        u32 rsv_27 : 16;                /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_empty_st2_u;

/* Define the union csr_hpre_fifo_empty_st3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rdtn_fifo_empty : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fifo_empty_st3_u;

/* Define the union csr_hpre_mem_ebit_inj_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 iobuf_err_bit_inject_en : 1; /* [0] */
        u32 qmv2_err_bit_inject_en : 1;  /* [1] */
        u32 rsv_28 : 30;                 /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ebit_inj_en_u;

/* Define the union csr_hpre_mem_ebit_inj_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 iobuf_ram0_err_bit_inj : 2;       /* [1:0] */
        u32 iobuf_ram1_err_bit_inj : 2;       /* [3:2] */
        u32 iobuf_ram2_err_bit_inj : 2;       /* [5:4] */
        u32 iobuf_ram3_err_bit_inj : 2;       /* [7:6] */
        u32 qmv2_storem_errbit_inj : 2;       /* [9:8] */
        u32 qmv2_store_comp_m_errbit_inj : 2; /* [11:10] */
        u32 rsv_29 : 20;                      /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ebit_inj_u;

/* Define the union csr_hpre_qmv2_mem_err_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 qmv2_storem_err_addr : 8;       /* [7:0] */
        u32 qmv2_store_comp_m_err_addr : 8; /* [15:8] */
        u32 rsv_30 : 16;                    /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_qmv2_mem_err_addr_u;

/* Define the union csr_hpre_clkgate_enb_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 clk_gate_enable : 1; /* [0] */
        u32 rsv_31 : 31;         /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_clkgate_enb_u;

/* Define the union csr_hpre_crypt_do_crt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_do_credit : 4; /* [3:0] */
        u32 rsv_32 : 28;        /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_crypt_do_crt_u;

/* Define the union csr_hpre_int_vector_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_cpi_int_index : 24; /* [23:0] */
        u32 rsv_33 : 3;              /* [26:24] */
        u32 hpre_enable : 1;         /* [27] */
        u32 hpre_int_issue : 1;      /* [28] */
        u32 rsv_34 : 3;              /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_int_vector_u;

/* Define the union csr_hpre_int_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_int_data : 6;           /* [5:0] */
        u32 rsv_35 : 10;                 /* [15:6] */
        u32 hpre_program_csr_id_ro : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_int_u;

/* Define the union csr_hpre_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_int_en : 6;          /* [5:0] */
        u32 rsv_36 : 10;              /* [15:6] */
        u32 hpre_program_csr_id : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_int_en_u;

/* Define the union csr_hpre_hac_ras_ce_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_hac_ras_ce_err : 1;         /* [0] */
        u32 hpre_hac_ras_ce_err_inj : 1;     /* [1] */
        u32 hpre_hac_ras_ce_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_ce_err_u;

/* Define the union csr_hpre_hac_ras_fe_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_hac_ras_fe_err : 1;         /* [0] */
        u32 hpre_hac_ras_fe_err_inj : 1;     /* [1] */
        u32 hpre_hac_ras_fe_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_fe_err_u;

/* Define the union csr_hpre_hac_ras_nfe_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_hac_ras_nfe_err : 1;         /* [0] */
        u32 hpre_hac_ras_nfe_err_inj : 1;     /* [1] */
        u32 hpre_hac_ras_nfe_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_hac_ras_nfe_err_u;

/* Define the union csr_int_sram_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 int_sram_err : 1;         /* [0] */
        u32 int_sram_err_inj : 1;     /* [1] */
        u32 int_sram_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_int_sram_err_u;

/* Define the union csr_hpre_di_fsm_timeout_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_di_fsm_timeout_err : 1;         /* [0] */
        u32 hpre_di_fsm_timeout_err_inj : 1;     /* [1] */
        u32 hpre_di_fsm_timeout_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_di_fsm_timeout_err_u;

/* Define the union csr_hpre_do_fsm_timeout_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_do_fsm_timeout_err : 1;         /* [0] */
        u32 hpre_do_fsm_timeout_err_inj : 1;     /* [1] */
        u32 hpre_do_fsm_timeout_err_sticky : 30; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_do_fsm_timeout_err_u;

/* Define the union csr_hpre_dido_err_info_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 di_sop_overlapped_err : 1;  /* [0] */
        u32 di_eop_len_nomatch_err : 1; /* [1] */
        u32 di_alg_err : 1;             /* [2] */
        u32 di_len_err : 1;             /* [3] */
        u32 di_strb_err : 1;            /* [4] */
        u32 di_fifo_err : 1;            /* [5] */
        u32 di_axi_wr_err : 1;          /* [6] */
        u32 di_credit_err : 1;          /* [7] */
        u32 do_credit_err : 1;          /* [8] */
        u32 do_fifo_err : 1;            /* [9] */
        u32 do_axi_rd_err : 1;          /* [10] */
        u32 rsv_37 : 21;                /* [31:11] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_dido_err_info_u;

/* Define the union csr_hpre_fsm_shb_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 fsm_shb_num : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_fsm_shb_cfg_u;

/* Define the union csr_hpre_mem_ctrl_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_mem_ctrl_0_bus : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ctrl_0_u;

/* Define the union csr_hpre_mem_ctrl_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_mem_ctrl_1_bus : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ctrl_1_u;

/* Define the union csr_hpre_mem_ctrl_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_mem_ctrl_2_bus : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ctrl_2_u;

/* Define the union csr_hpre_mem_ctrl_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_mem_ctrl_3_bus : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ctrl_3_u;

/* Define the union csr_hpre_mem_ctrl_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_mem_ctrl_4_bus : 6; /* [5:0] */
        u32 rsv_38 : 26;             /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_mem_ctrl_4_u;

/* Define the union csr_hpre_rdchn_ini_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rdchn_ini_st : 1; /* [0] */
        u32 rsv_39 : 31;      /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_rdchn_ini_st_u;

/* Define the union csr_hpre_ecc1bit_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_ecc1bit_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_ecc1bit_err_cnt_u;

/* Define the union csr_hpre_ecc2bit_err_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_ecc2bit_err_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_ecc2bit_err_cnt_u;

/* Define the union csr_hpre_peh_eco1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_peh_eco1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_peh_eco1_u;

/* Define the union csr_hpre_peh_eco2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_peh_eco2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_peh_eco2_u;

/* Define the union csr_hpre_peh_eco3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_peh_eco3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_peh_eco3_u;

/* Define the union csr_hpre_peh_eco4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_peh_eco4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_peh_eco4_u;

/* Define the union csr_hpre_peh_eco5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_peh_eco5 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_peh_eco5_u;

/* Define the union csr_hpre_eco1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_eco1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_eco1_u;

/* Define the union csr_hpre_eco2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_eco2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_eco2_u;

/* Define the union csr_hpre_eco3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_eco3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_eco3_u;

/* Define the union csr_hpre_eco4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hpre_eco4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_hpre_eco4_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_hpre_cfg_axqos_u hpre_cfg_axqos;                     /* C */
    volatile csr_hpre_cfg_axcache_u hpre_cfg_axcache;                 /* 10 */
    volatile csr_hpre_cfg_rdchn_ini_u hpre_cfg_rdchn_ini;             /* 14 */
    volatile csr_hpre_cfg_awuser_fp_cfg_u hpre_cfg_awuser_fp_cfg;     /* 18 */
    volatile csr_hpre_cfg_bd_endian_u hpre_cfg_bd_endian;             /* 20 */
    volatile csr_hpre_ecc_bypass_u hpre_ecc_bypass;                   /* 24 */
    volatile csr_hpre_ras_int_width_cfg_u hpre_ras_int_width_cfg;     /* 28 */
    volatile csr_hpre_poison_bypass_u hpre_poison_bypass;             /* 2C */
    volatile csr_hpre_bd_aruser_cfg_u hpre_bd_aruser_cfg;             /* 30 */
    volatile csr_hpre_bd_awuser_cfg_u hpre_bd_awuser_cfg;             /* 34 */
    volatile csr_hpre_types_enb_u hpre_types_enb;                     /* 38 */
    volatile csr_hpre_data_aruser_cfg_u hpre_data_aruser_cfg;         /* 3C */
    volatile csr_hpre_data_awuser_cfg_u hpre_data_awuser_cfg;         /* 40 */
    volatile csr_hpre_am_ooo_shutdown_enb_u hpre_am_ooo_shutdown_enb; /* 44 */
    volatile csr_hpre_hac_int_msk_u hpre_hac_int_msk;                 /* 400 */
    volatile csr_hpre_ras_ecc1bit_th_u hpre_ras_ecc1bit_th;           /* 40C */
    volatile csr_hpre_hac_ras_ce_enb_u hpre_hac_ras_ce_enb;           /* 410 */
    volatile csr_hpre_hac_ras_nfe_enb_u hpre_hac_ras_nfe_enb;         /* 414 */
    volatile csr_hpre_hac_ras_fe_enb_u hpre_hac_ras_fe_enb;           /* 418 */
    volatile csr_hpre_hac_int_set_u hpre_hac_int_set;                 /* 500 */
    volatile csr_hpre_hac_rint_u hpre_hac_rint;                       /* 600 */
    volatile csr_hpre_hac_int_st_u hpre_hac_int_st;                   /* 800 */
    volatile csr_hpre_fifo_afull_his1_u hpre_fifo_afull_his1;         /* 810 */
    volatile csr_hpre_fifo_afull_his2_u hpre_fifo_afull_his2;         /* 814 */
    volatile csr_hpre_fifo_afull_his3_u hpre_fifo_afull_his3;         /* 818 */
    volatile csr_hpre_fifo_full_his1_u hpre_fifo_full_his1;           /* 840 */
    volatile csr_hpre_fifo_full_his2_u hpre_fifo_full_his2;           /* 844 */
    volatile csr_hpre_fifo_full_his3_u hpre_fifo_full_his3;           /* 848 */
    volatile csr_hpre_fifo_empty_st1_u hpre_fifo_empty_st1;           /* 880 */
    volatile csr_hpre_fifo_empty_st2_u hpre_fifo_empty_st2;           /* 884 */
    volatile csr_hpre_fifo_empty_st3_u hpre_fifo_empty_st3;           /* 888 */
    volatile csr_hpre_mem_ebit_inj_en_u hpre_mem_ebit_inj_en;         /* 900 */
    volatile csr_hpre_mem_ebit_inj_u hpre_mem_ebit_inj;               /* 904 */
    volatile csr_hpre_qmv2_mem_err_addr_u hpre_qmv2_mem_err_addr;     /* 908 */
    volatile csr_hpre_clkgate_enb_u hpre_clkgate_enb;                 /* 90C */
    volatile csr_hpre_crypt_do_crt_u hpre_crypt_do_crt;               /* 910 */
    volatile csr_hpre_int_vector_u hpre_int_vector;                   /* 914 */
    volatile csr_hpre_int_u hpre_int;                                 /* 918 */
    volatile csr_hpre_int_en_u hpre_int_en;                           /* 91C */
    volatile csr_hpre_hac_ras_ce_err_u hpre_hac_ras_ce_err;           /* 920 */
    volatile csr_hpre_hac_ras_fe_err_u hpre_hac_ras_fe_err;           /* 924 */
    volatile csr_hpre_hac_ras_nfe_err_u hpre_hac_ras_nfe_err;         /* 928 */
    volatile csr_int_sram_err_u int_sram_err;                         /* 92C */
    volatile csr_hpre_di_fsm_timeout_err_u hpre_di_fsm_timeout_err;   /* 930 */
    volatile csr_hpre_do_fsm_timeout_err_u hpre_do_fsm_timeout_err;   /* 934 */
    volatile csr_hpre_dido_err_info_u hpre_dido_err_info;             /* 938 */
    volatile csr_hpre_fsm_shb_cfg_u hpre_fsm_shb_cfg;                 /* 93C */
    volatile csr_hpre_mem_ctrl_0_u hpre_mem_ctrl_0;                   /* 940 */
    volatile csr_hpre_mem_ctrl_1_u hpre_mem_ctrl_1;                   /* 944 */
    volatile csr_hpre_mem_ctrl_2_u hpre_mem_ctrl_2;                   /* 948 */
    volatile csr_hpre_mem_ctrl_3_u hpre_mem_ctrl_3;                   /* 94C */
    volatile csr_hpre_mem_ctrl_4_u hpre_mem_ctrl_4;                   /* 950 */
    volatile csr_hpre_rdchn_ini_st_u hpre_rdchn_ini_st;               /* A00 */
    volatile csr_hpre_ecc1bit_err_cnt_u hpre_ecc1bit_err_cnt;         /* A04 */
    volatile csr_hpre_ecc2bit_err_cnt_u hpre_ecc2bit_err_cnt;         /* A08 */
    volatile csr_hpre_peh_eco1_u hpre_peh_eco1;                       /* A10 */
    volatile csr_hpre_peh_eco2_u hpre_peh_eco2;                       /* A14 */
    volatile csr_hpre_peh_eco3_u hpre_peh_eco3;                       /* A18 */
    volatile csr_hpre_peh_eco4_u hpre_peh_eco4;                       /* A1C */
    volatile csr_hpre_peh_eco5_u hpre_peh_eco5;                       /* A20 */
    volatile csr_hpre_eco1_u hpre_eco1;                               /* A24 */
    volatile csr_hpre_eco2_u hpre_eco2;                               /* A28 */
    volatile csr_hpre_eco3_u hpre_eco3;                               /* A2C */
    volatile csr_hpre_eco4_u hpre_eco4;                               /* A30 */
} S_hpre_common_REGS_TYPE;

/* Declare the struct pointor of the module hpre_common */
extern volatile S_hpre_common_REGS_TYPE *gophpre_commonAllReg;

/* Declare the functions that set the member value */
int iSetHPRE_CFG_AXQOS_awqos(unsigned int uawqos);
int iSetHPRE_CFG_AXQOS_arqos(unsigned int uarqos);
int iSetHPRE_CFG_AXCACHE_awcache(unsigned int uawcache);
int iSetHPRE_CFG_AXCACHE_arcache(unsigned int uarcache);
int iSetHPRE_CFG_RDCHN_INI_rdchn_ini(unsigned int urdchn_ini);
int iSetHPRE_CFG_AWUSER_FP_CFG_aw_fp1_enb(unsigned int uaw_fp1_enb);
int iSetHPRE_CFG_BD_ENDIAN_bd_endian(unsigned int ubd_endian);
int iSetHPRE_ECC_BYPASS_ecc_bypass(unsigned int uecc_bypass);
int iSetHPRE_RAS_INT_WIDTH_CFG_ras_int_width(unsigned int uras_int_width);
int iSetHPRE_POISON_BYPASS_rd_poison_bypass(unsigned int urd_poison_bypass);
int iSetHPRE_POISON_BYPASS_wr_poison_bypass(unsigned int uwr_poison_bypass);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_snpattr(unsigned int ubd_aruser_snpattr);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_cmd_type(unsigned int ubd_aruser_cmd_type);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_type(unsigned int ubd_aruser_type);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_cleaninvalid(unsigned int ubd_aruser_cleaninvalid);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_fna(unsigned int ubd_aruser_fna);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_fa(unsigned int ubd_aruser_fa);
int iSetHPRE_BD_ARUSER_CFG_bd_aruser_ssv(unsigned int ubd_aruser_ssv);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_snpattr(unsigned int ubd_awuser_snpattr);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_cmd_type(unsigned int ubd_awuser_cmd_type);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_type(unsigned int ubd_awuser_type);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_fp1_enb(unsigned int ubd_awuser_fp1_enb);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_fna(unsigned int ubd_awuser_fna);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_fa(unsigned int ubd_awuser_fa);
int iSetHPRE_BD_AWUSER_CFG_bd_awuser_ssv(unsigned int ubd_awuser_ssv);
int iSetHPRE_TYPES_ENB_task_type_enb(unsigned int utask_type_enb);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_snpattr(unsigned int udata_aruser_snpattr);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_cmd_type(unsigned int udata_aruser_cmd_type);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_type(unsigned int udata_aruser_type);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_cleaninvalid(unsigned int udata_aruser_cleaninvalid);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_fna(unsigned int udata_aruser_fna);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_fa(unsigned int udata_aruser_fa);
int iSetHPRE_DATA_ARUSER_CFG_data_aruser_ssv(unsigned int udata_aruser_ssv);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_snpattr(unsigned int udata_awuser_snpattr);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_cmd_type(unsigned int udata_awuser_cmd_type);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_type(unsigned int udata_awuser_type);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_fp1_enb(unsigned int udata_awuser_fp1_enb);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_fna(unsigned int udata_awuser_fna);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_fa(unsigned int udata_awuser_fa);
int iSetHPRE_DATA_AWUSER_CFG_data_awuser_ssv(unsigned int udata_awuser_ssv);
int iSetHPRE_AM_OOO_SHUTDOWN_ENB_am_ooo_shutdown_enb(unsigned int uam_ooo_shutdown_enb);
int iSetHPRE_HAC_INT_MSK_core_ecc_1bit_err_msk(unsigned int ucore_ecc_1bit_err_msk);
int iSetHPRE_HAC_INT_MSK_core_ecc_2bit_err_msk(unsigned int ucore_ecc_2bit_err_msk);
int iSetHPRE_HAC_INT_MSK_dat_wb_poison_msk(unsigned int udat_wb_poison_msk);
int iSetHPRE_HAC_INT_MSK_dat_rd_poison_msk(unsigned int udat_rd_poison_msk);
int iSetHPRE_HAC_INT_MSK_bd_rd_poison_msk(unsigned int ubd_rd_poison_msk);
int iSetHPRE_HAC_INT_MSK_ooo_ecc_2bit_err_msk(unsigned int uooo_ecc_2bit_err_msk);
int iSetHPRE_HAC_INT_MSK_cluster1_shb_timeout_msk(unsigned int ucluster1_shb_timeout_msk);
int iSetHPRE_HAC_INT_MSK_cluster2_shb_timeout_msk(unsigned int ucluster2_shb_timeout_msk);
int iSetHPRE_HAC_INT_MSK_cluster3_shb_timeout_msk(unsigned int ucluster3_shb_timeout_msk);
int iSetHPRE_HAC_INT_MSK_cluster4_shb_timeout_msk(unsigned int ucluster4_shb_timeout_msk);
int iSetHPRE_HAC_INT_MSK_ooo_rdrsp_err_msk(unsigned int uooo_rdrsp_err_msk);
int iSetHPRE_HAC_INT_MSK_ooo_wrrsp_err_msk(unsigned int uooo_wrrsp_err_msk);
int iSetHPRE_HAC_INT_MSK_qmv2_ecc_1bit_err_msk(unsigned int uqmv2_ecc_1bit_err_msk);
int iSetHPRE_HAC_INT_MSK_qmv2_ecc_2bit_err_msk(unsigned int uqmv2_ecc_2bit_err_msk);
int iSetHPRE_HAC_INT_MSK_datrd_ecc_1bit_err_msk(unsigned int udatrd_ecc_1bit_err_msk);
int iSetHPRE_HAC_INT_MSK_datrd_ecc_2bit_err_msk(unsigned int udatrd_ecc_2bit_err_msk);
int iSetHPRE_RAS_ECC1BIT_TH_hpre_ras_ecc1bit_th(unsigned int uhpre_ras_ecc1bit_th);
int iSetHPRE_HAC_RAS_CE_ENB_hac_ras_ce_enb(unsigned int uhac_ras_ce_enb);
int iSetHPRE_HAC_RAS_NFE_ENB_hac_ras_nfe_enb(unsigned int uhac_ras_nfe_enb);
int iSetHPRE_HAC_RAS_FE_ENB_hac_ras_fe_enb(unsigned int uhac_ras_fe_enb);
int iSetHPRE_HAC_INT_SET_core_ecc_1bit_err_int_set(unsigned int ucore_ecc_1bit_err_int_set);
int iSetHPRE_HAC_INT_SET_core_ecc_2bit_err_int_set(unsigned int ucore_ecc_2bit_err_int_set);
int iSetHPRE_HAC_INT_SET_dat_wb_poison_int_set(unsigned int udat_wb_poison_int_set);
int iSetHPRE_HAC_INT_SET_dat_rd_poison_int_set(unsigned int udat_rd_poison_int_set);
int iSetHPRE_HAC_INT_SET_bd_rd_poison_int_set(unsigned int ubd_rd_poison_int_set);
int iSetHPRE_HAC_INT_SET_ooo_ecc_2bit_err_int_set(unsigned int uooo_ecc_2bit_err_int_set);
int iSetHPRE_HAC_INT_SET_cluster1_shb_timeout_int_set(unsigned int ucluster1_shb_timeout_int_set);
int iSetHPRE_HAC_INT_SET_cluster2_shb_timeout_int_set(unsigned int ucluster2_shb_timeout_int_set);
int iSetHPRE_HAC_INT_SET_cluster3_shb_timeout_int_set(unsigned int ucluster3_shb_timeout_int_set);
int iSetHPRE_HAC_INT_SET_cluster4_shb_timeout_int_set(unsigned int ucluster4_shb_timeout_int_set);
int iSetHPRE_HAC_INT_SET_ooo_rdrsp_err_int_set(unsigned int uooo_rdrsp_err_int_set);
int iSetHPRE_HAC_INT_SET_ooo_wrrsp_err_int_set(unsigned int uooo_wrrsp_err_int_set);
int iSetHPRE_HAC_INT_SET_qmv2_ecc_1bit_err_int_set(unsigned int uqmv2_ecc_1bit_err_int_set);
int iSetHPRE_HAC_INT_SET_qmv2_ecc_2bit_err_int_set(unsigned int uqmv2_ecc_2bit_err_int_set);
int iSetHPRE_HAC_INT_SET_datrd_ecc_1bit_err_int_set(unsigned int udatrd_ecc_1bit_err_int_set);
int iSetHPRE_HAC_INT_SET_datrd_ecc_2bit_err_int_set(unsigned int udatrd_ecc_2bit_err_int_set);
int iSetHPRE_HAC_RINT_core_ecc_1bit_err_rint(unsigned int ucore_ecc_1bit_err_rint);
int iSetHPRE_HAC_RINT_core_ecc_2bit_err_rint(unsigned int ucore_ecc_2bit_err_rint);
int iSetHPRE_HAC_RINT_dat_wb_poison_rint(unsigned int udat_wb_poison_rint);
int iSetHPRE_HAC_RINT_dat_rd_poison_rint(unsigned int udat_rd_poison_rint);
int iSetHPRE_HAC_RINT_bd_rd_poison_rint(unsigned int ubd_rd_poison_rint);
int iSetHPRE_HAC_RINT_ooo_ecc_2bit_err_rint(unsigned int uooo_ecc_2bit_err_rint);
int iSetHPRE_HAC_RINT_cluster1_shb_timeout_rint(unsigned int ucluster1_shb_timeout_rint);
int iSetHPRE_HAC_RINT_cluster2_shb_timeout_rint(unsigned int ucluster2_shb_timeout_rint);
int iSetHPRE_HAC_RINT_cluster3_shb_timeout_rint(unsigned int ucluster3_shb_timeout_rint);
int iSetHPRE_HAC_RINT_cluster4_shb_timeout_rint(unsigned int ucluster4_shb_timeout_rint);
int iSetHPRE_HAC_RINT_ooo_rdrsp_err_rint(unsigned int uooo_rdrsp_err_rint);
int iSetHPRE_HAC_RINT_ooo_wrrsp_err_rint(unsigned int uooo_wrrsp_err_rint);
int iSetHPRE_HAC_RINT_qmv2_ecc_1bit_err_rint(unsigned int uqmv2_ecc_1bit_err_rint);
int iSetHPRE_HAC_RINT_qmv2_ecc_2bit_err_rint(unsigned int uqmv2_ecc_2bit_err_rint);
int iSetHPRE_HAC_RINT_datrd_ecc_1bit_err_rint(unsigned int udatrd_ecc_1bit_err_rint);
int iSetHPRE_HAC_RINT_datrd_ecc_2bit_err_rint(unsigned int udatrd_ecc_2bit_err_rint);
int iSetHPRE_HAC_INT_ST_core_ecc_1bit_err_int_st(unsigned int ucore_ecc_1bit_err_int_st);
int iSetHPRE_HAC_INT_ST_core_ecc_2bit_err_int_st(unsigned int ucore_ecc_2bit_err_int_st);
int iSetHPRE_HAC_INT_ST_dat_wb_poison_int_st(unsigned int udat_wb_poison_int_st);
int iSetHPRE_HAC_INT_ST_dat_rd_poison_int_st(unsigned int udat_rd_poison_int_st);
int iSetHPRE_HAC_INT_ST_bd_rd_poison_int_st(unsigned int ubd_rd_poison_int_st);
int iSetHPRE_HAC_INT_ST_ooo_ecc_2bit_err_int_st(unsigned int uooo_ecc_2bit_err_int_st);
int iSetHPRE_HAC_INT_ST_cluster1_shb_timeout_int_st(unsigned int ucluster1_shb_timeout_int_st);
int iSetHPRE_HAC_INT_ST_cluster2_shb_timeout_int_st(unsigned int ucluster2_shb_timeout_int_st);
int iSetHPRE_HAC_INT_ST_cluster3_shb_timeout_int_st(unsigned int ucluster3_shb_timeout_int_st);
int iSetHPRE_HAC_INT_ST_cluster4_shb_timeout_int_st(unsigned int ucluster4_shb_timeout_int_st);
int iSetHPRE_HAC_INT_ST_ooo_rdrsp_err_int_st(unsigned int uooo_rdrsp_err_int_st);
int iSetHPRE_HAC_INT_ST_ooo_wrrsp_err_int_st(unsigned int uooo_wrrsp_err_int_st);
int iSetHPRE_HAC_INT_ST_qmv2_ecc_1bit_err_int_st(unsigned int uqmv2_ecc_1bit_err_int_st);
int iSetHPRE_HAC_INT_ST_qmv2_ecc_2bit_err_int_st(unsigned int uqmv2_ecc_2bit_err_int_st);
int iSetHPRE_HAC_INT_ST_datrd_ecc_1bit_err_int_st(unsigned int udatrd_ecc_1bit_err_int_st);
int iSetHPRE_HAC_INT_ST_datrd_ecc_2bit_err_int_st(unsigned int udatrd_ecc_2bit_err_int_st);
int iSetHPRE_FIFO_AFULL_HIS1_dat_rd_chn_fifo_afull_his(unsigned int udat_rd_chn_fifo_afull_his);
int iSetHPRE_FIFO_AFULL_HIS2_dat_wb_chn_fifo_afull_his(unsigned int udat_wb_chn_fifo_afull_his);
int iSetHPRE_FIFO_AFULL_HIS3_rdtn_fifo_afull_his(unsigned int urdtn_fifo_afull_his);
int iSetHPRE_FIFO_FULL_HIS1_data_rd_chn_fifo_full_his(unsigned int udata_rd_chn_fifo_full_his);
int iSetHPRE_FIFO_FULL_HIS2_dat_wb_chn_fifo_full_his(unsigned int udat_wb_chn_fifo_full_his);
int iSetHPRE_FIFO_FULL_HIS3_rdtn_fifo_full_his(unsigned int urdtn_fifo_full_his);
int iSetHPRE_FIFO_EMPTY_ST1_dat_rd_chn_fifo_empty(unsigned int udat_rd_chn_fifo_empty);
int iSetHPRE_FIFO_EMPTY_ST2_dat_wb_chn_fifo_empty(unsigned int udat_wb_chn_fifo_empty);
int iSetHPRE_FIFO_EMPTY_ST3_rdtn_fifo_empty(unsigned int urdtn_fifo_empty);
int iSetHPRE_MEM_EBIT_INJ_EN_iobuf_err_bit_inject_en(unsigned int uiobuf_err_bit_inject_en);
int iSetHPRE_MEM_EBIT_INJ_EN_qmv2_err_bit_inject_en(unsigned int uqmv2_err_bit_inject_en);
int iSetHPRE_MEM_EBIT_INJ_iobuf_ram0_err_bit_inj(unsigned int uiobuf_ram0_err_bit_inj);
int iSetHPRE_MEM_EBIT_INJ_iobuf_ram1_err_bit_inj(unsigned int uiobuf_ram1_err_bit_inj);
int iSetHPRE_MEM_EBIT_INJ_iobuf_ram2_err_bit_inj(unsigned int uiobuf_ram2_err_bit_inj);
int iSetHPRE_MEM_EBIT_INJ_iobuf_ram3_err_bit_inj(unsigned int uiobuf_ram3_err_bit_inj);
int iSetHPRE_MEM_EBIT_INJ_qmv2_storem_errbit_inj(unsigned int uqmv2_storem_errbit_inj);
int iSetHPRE_MEM_EBIT_INJ_qmv2_store_comp_m_errbit_inj(unsigned int uqmv2_store_comp_m_errbit_inj);
int iSetHPRE_QMV2_MEM_ERR_ADDR_qmv2_storem_err_addr(unsigned int uqmv2_storem_err_addr);
int iSetHPRE_QMV2_MEM_ERR_ADDR_qmv2_store_comp_m_err_addr(unsigned int uqmv2_store_comp_m_err_addr);
int iSetHPRE_CLKGATE_ENB_clk_gate_enable(unsigned int uclk_gate_enable);
int iSetHPRE_CRYPT_DO_CRT_hpre_do_credit(unsigned int uhpre_do_credit);
int iSetHPRE_INT_VECTOR_hpre_cpi_int_index(unsigned int uhpre_cpi_int_index);
int iSetHPRE_INT_VECTOR_hpre_enable(unsigned int uhpre_enable);
int iSetHPRE_INT_VECTOR_hpre_int_issue(unsigned int uhpre_int_issue);
int iSetHPRE_INT_hpre_int_data(unsigned int uhpre_int_data);
int iSetHPRE_INT_hpre_program_csr_id_ro(unsigned int uhpre_program_csr_id_ro);
int iSetHPRE_INT_EN_hpre_int_en(unsigned int uhpre_int_en);
int iSetHPRE_INT_EN_hpre_program_csr_id(unsigned int uhpre_program_csr_id);
int iSetHPRE_HAC_RAS_CE_ERR_hpre_hac_ras_ce_err(unsigned int uhpre_hac_ras_ce_err);
int iSetHPRE_HAC_RAS_CE_ERR_hpre_hac_ras_ce_err_inj(unsigned int uhpre_hac_ras_ce_err_inj);
int iSetHPRE_HAC_RAS_CE_ERR_hpre_hac_ras_ce_err_sticky(unsigned int uhpre_hac_ras_ce_err_sticky);
int iSetHPRE_HAC_RAS_FE_ERR_hpre_hac_ras_fe_err(unsigned int uhpre_hac_ras_fe_err);
int iSetHPRE_HAC_RAS_FE_ERR_hpre_hac_ras_fe_err_inj(unsigned int uhpre_hac_ras_fe_err_inj);
int iSetHPRE_HAC_RAS_FE_ERR_hpre_hac_ras_fe_err_sticky(unsigned int uhpre_hac_ras_fe_err_sticky);
int iSetHPRE_HAC_RAS_NFE_ERR_hpre_hac_ras_nfe_err(unsigned int uhpre_hac_ras_nfe_err);
int iSetHPRE_HAC_RAS_NFE_ERR_hpre_hac_ras_nfe_err_inj(unsigned int uhpre_hac_ras_nfe_err_inj);
int iSetHPRE_HAC_RAS_NFE_ERR_hpre_hac_ras_nfe_err_sticky(unsigned int uhpre_hac_ras_nfe_err_sticky);
int iSetINT_SRAM_ERR_int_sram_err(unsigned int uint_sram_err);
int iSetINT_SRAM_ERR_int_sram_err_inj(unsigned int uint_sram_err_inj);
int iSetINT_SRAM_ERR_int_sram_err_sticky(unsigned int uint_sram_err_sticky);
int iSetHPRE_DI_FSM_TIMEOUT_ERR_hpre_di_fsm_timeout_err(unsigned int uhpre_di_fsm_timeout_err);
int iSetHPRE_DI_FSM_TIMEOUT_ERR_hpre_di_fsm_timeout_err_inj(unsigned int uhpre_di_fsm_timeout_err_inj);
int iSetHPRE_DI_FSM_TIMEOUT_ERR_hpre_di_fsm_timeout_err_sticky(unsigned int uhpre_di_fsm_timeout_err_sticky);
int iSetHPRE_DO_FSM_TIMEOUT_ERR_hpre_do_fsm_timeout_err(unsigned int uhpre_do_fsm_timeout_err);
int iSetHPRE_DO_FSM_TIMEOUT_ERR_hpre_do_fsm_timeout_err_inj(unsigned int uhpre_do_fsm_timeout_err_inj);
int iSetHPRE_DO_FSM_TIMEOUT_ERR_hpre_do_fsm_timeout_err_sticky(unsigned int uhpre_do_fsm_timeout_err_sticky);
int iSetHPRE_DIDO_ERR_INFO_di_sop_overlapped_err(unsigned int udi_sop_overlapped_err);
int iSetHPRE_DIDO_ERR_INFO_di_eop_len_nomatch_err(unsigned int udi_eop_len_nomatch_err);
int iSetHPRE_DIDO_ERR_INFO_di_alg_err(unsigned int udi_alg_err);
int iSetHPRE_DIDO_ERR_INFO_di_len_err(unsigned int udi_len_err);
int iSetHPRE_DIDO_ERR_INFO_di_strb_err(unsigned int udi_strb_err);
int iSetHPRE_DIDO_ERR_INFO_di_fifo_err(unsigned int udi_fifo_err);
int iSetHPRE_DIDO_ERR_INFO_di_axi_wr_err(unsigned int udi_axi_wr_err);
int iSetHPRE_DIDO_ERR_INFO_di_credit_err(unsigned int udi_credit_err);
int iSetHPRE_DIDO_ERR_INFO_do_credit_err(unsigned int udo_credit_err);
int iSetHPRE_DIDO_ERR_INFO_do_fifo_err(unsigned int udo_fifo_err);
int iSetHPRE_DIDO_ERR_INFO_do_axi_rd_err(unsigned int udo_axi_rd_err);
int iSetHPRE_FSM_SHB_CFG_fsm_shb_num(unsigned int ufsm_shb_num);
int iSetHPRE_MEM_CTRL_0_hpre_mem_ctrl_0_bus(unsigned int uhpre_mem_ctrl_0_bus);
int iSetHPRE_MEM_CTRL_1_hpre_mem_ctrl_1_bus(unsigned int uhpre_mem_ctrl_1_bus);
int iSetHPRE_MEM_CTRL_2_hpre_mem_ctrl_2_bus(unsigned int uhpre_mem_ctrl_2_bus);
int iSetHPRE_MEM_CTRL_3_hpre_mem_ctrl_3_bus(unsigned int uhpre_mem_ctrl_3_bus);
int iSetHPRE_MEM_CTRL_4_hpre_mem_ctrl_4_bus(unsigned int uhpre_mem_ctrl_4_bus);
int iSetHPRE_RDCHN_INI_ST_rdchn_ini_st(unsigned int urdchn_ini_st);
int iSetHPRE_ECC1BIT_ERR_CNT_hpre_ecc1bit_err_cnt(unsigned int uhpre_ecc1bit_err_cnt);
int iSetHPRE_ECC2BIT_ERR_CNT_hpre_ecc2bit_err_cnt(unsigned int uhpre_ecc2bit_err_cnt);
int iSetHPRE_PEH_ECO1_hpre_peh_eco1(unsigned int uhpre_peh_eco1);
int iSetHPRE_PEH_ECO2_hpre_peh_eco2(unsigned int uhpre_peh_eco2);
int iSetHPRE_PEH_ECO3_hpre_peh_eco3(unsigned int uhpre_peh_eco3);
int iSetHPRE_PEH_ECO4_hpre_peh_eco4(unsigned int uhpre_peh_eco4);
int iSetHPRE_PEH_ECO5_hpre_peh_eco5(unsigned int uhpre_peh_eco5);
int iSetHPRE_ECO1_hpre_eco1(unsigned int uhpre_eco1);
int iSetHPRE_ECO2_hpre_eco2(unsigned int uhpre_eco2);
int iSetHPRE_ECO3_hpre_eco3(unsigned int uhpre_eco3);
int iSetHPRE_ECO4_hpre_eco4(unsigned int uhpre_eco4);

/* Define the union csr_cbc_fifo_16k_th_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_fifo_16k_th : 8; /* [7:0] */
        u32 rsv_0 : 24;          /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_fifo_16k_th_u;

/* Define the union csr_saa_ch_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 saa_ch_en : 14;      /* [13:0] */
        u32 rsv_1 : 2;           /* [15:14] */
        u32 cbc_clk_gate_en : 1; /* [16] */
        u32 rsv_2 : 15;          /* [31:17] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_saa_ch_en_u;

/* Define the union csr_cbc_core_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_core_rsv : 16; /* [15:0] */
        u32 rsv_3 : 16;        /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_core_rsv_u;

/* Define the union csr_sec_cluster_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 sec_cluster_rsv : 24; /* [23:0] */
        u32 rsv_4 : 8;            /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sec_cluster_rsv_u;

/* Define the union csr_sec_alu_addr_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 alu_addr_i : 10; /* [9:0] */
        u32 rsv_5 : 22;      /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sec_alu_addr_i_u;

/* Define the union csr_sec_alu_rdata_o_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 alu_rdata_o : 16; /* [15:0] */
        u32 rsv_6 : 16;       /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sec_alu_rdata_o_u;

/* Define the union csr_sec_cluster_saa_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 sec_cluster_saa_cnt : 12; /* [11:0] */
        u32 rsv_7 : 20;               /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sec_cluster_saa_cnt_u;

/* Define the union csr_cbc_probe_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_probe_addr : 16; /* [15:0] */
        u32 cbc_probe_cs : 4;    /* [19:16] */
        u32 cbc_probe_req : 1;   /* [20] */
        u32 rsv_8 : 11;          /* [31:21] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_probe_i_u;

/* Define the union csr_cbc_probe_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_probe_rdata : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_probe_rdata_u;

/* Define the union csr_cbc_fifo_probe_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dfx_credit_dis_if : 1; /* [0] */
        u32 cbc_dfx_credit_dis_of : 1; /* [1] */
        u32 cbc_probe_bd_dis : 1;      /* [2] */
        u32 rsv_9 : 1;                 /* [3] */
        u32 cbc_probe_ipsec_re : 1;    /* [4] */
        u32 cbc_probe_fifo_sel : 1;    /* [5] */
        u32 rsv_10 : 26;               /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_fifo_probe_ctrl_u;

/* Define the union csr_cbc_fifo_probe_stat_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_fifo_probe_stat : 16;   /* [15:0] */
        u32 cbc_probe_ipsec_if_ept : 1; /* [16] */
        u32 cbc_probe_ipsec_of_ept : 1; /* [17] */
        u32 rsv_11 : 14;                /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_fifo_probe_stat_u;

/* Define the union csr_cbc_bd_err_code_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_bd_err_code : 7; /* [6:0] */
        u32 rsv_12 : 25;         /* [31:7] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_bd_err_code_u;

/* Define the union csr_cbc_bd_err_code_clr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_bd_err_code_clr : 1; /* [0] */
        u32 rsv_13 : 31;             /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_bd_err_code_clr_u;

/* Define the union csr_cbc_bd_err_msk_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_bd_err_msk_l : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_bd_err_msk_l_u;

/* Define the union csr_cbc_bd_err_msk_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_bd_err_msk_h : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_bd_err_msk_h_u;

/* Define the union csr_cbc_fifo_probe_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_fifo_probe_rdata : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_fifo_probe_rdata_u;

/* Define the union csr_cbc_ecc_err1_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_ecc_err1_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_ecc_err1_cnt_u;

/* Define the union csr_cbc_ecc_err2_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_ecc_err2_addr : 11; /* [10:0] */
        u32 rsv_14 : 21;            /* [31:11] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_ecc_err2_addr_u;

/* Define the union csr_ipsec_cbc_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_int_en : 24; /* [23:0] */
        u32 rsv_15 : 8;            /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_int_en_u;

/* Define the union csr_ipsec_cbc_alm_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_alm : 24; /* [23:0] */
        u32 rsv_16 : 8;         /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_alm_u;

/* Define the union csr_ipsec_cbc_sta1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_sta1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_sta1_u;

/* Define the union csr_ipsec_cbc_sta2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_sta2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_sta2_u;

/* Define the union csr_ipsec_cbc_sta3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_sta3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_sta3_u;

/* Define the union csr_ipsec_cbc_sta4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_cbc_sta4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_cbc_sta4_u;

/* Define the union csr_cbc_core_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_core_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_core_cnt_u;

/* Define the union csr_cbc_dft_mem_ctrl_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dft_mem_ctrl_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_dft_mem_ctrl_0_u;

/* Define the union csr_cbc_dft_mem_ctrl_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dft_mem_ctrl_1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_dft_mem_ctrl_1_u;

/* Define the union csr_cbc_dft_mem_ctrl_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dft_mem_ctrl_2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_dft_mem_ctrl_2_u;

/* Define the union csr_cbc_dft_mem_ctrl_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dft_mem_ctrl_3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_dft_mem_ctrl_3_u;

/* Define the union csr_cbc_dft_mem_ctrl_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cbc_dft_mem_ctrl_4 : 6; /* [5:0] */
        u32 rsv_17 : 26;            /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_cbc_dft_mem_ctrl_4_u;

/* Define the union csr_trng_cfg_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_tmout_th : 24;  /* [23:0] */
        u32 trng_en : 1;         /* [24] */
        u32 drop_random_cfg : 1; /* [25] */
        u32 rsv_18 : 6;          /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cfg_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_cbc_fifo_16k_th_u cbc_fifo_16k_th;              /* 0 */
    volatile csr_saa_ch_en_u saa_ch_en;                          /* 4 */
    volatile csr_cbc_core_rsv_u cbc_core_rsv;                    /* 8 */
    volatile csr_sec_cluster_rsv_u sec_cluster_rsv;              /* 10 */
    volatile csr_sec_alu_addr_i_u sec_alu_addr_i;                /* 14 */
    volatile csr_sec_alu_rdata_o_u sec_alu_rdata_o;              /* 18 */
    volatile csr_sec_cluster_saa_cnt_u sec_cluster_saa_cnt[14];  /* 20 */
    volatile csr_cbc_probe_i_u cbc_probe_i;                      /* 60 */
    volatile csr_cbc_probe_rdata_u cbc_probe_rdata;              /* 64 */
    volatile csr_cbc_fifo_probe_ctrl_u cbc_fifo_probe_ctrl;      /* 68 */
    volatile csr_cbc_fifo_probe_stat_u cbc_fifo_probe_stat;      /* 6C */
    volatile csr_cbc_bd_err_code_u cbc_bd_err_code;              /* A0 */
    volatile csr_cbc_bd_err_code_clr_u cbc_bd_err_code_clr;      /* A4 */
    volatile csr_cbc_bd_err_msk_l_u cbc_bd_err_msk_l;            /* A8 */
    volatile csr_cbc_bd_err_msk_h_u cbc_bd_err_msk_h;            /* AC */
    volatile csr_cbc_fifo_probe_rdata_u cbc_fifo_probe_rdata[8]; /* 70 */
    volatile csr_cbc_ecc_err1_cnt_u cbc_ecc_err1_cnt;            /* B0 */
    volatile csr_cbc_ecc_err2_addr_u cbc_ecc_err2_addr;          /* B4 */
    volatile csr_ipsec_cbc_int_en_u ipsec_cbc_int_en;            /* FC */
    volatile csr_ipsec_cbc_alm_u ipsec_cbc_alm;                  /* 100 */
    volatile csr_ipsec_cbc_sta1_u ipsec_cbc_sta1;                /* 104 */
    volatile csr_ipsec_cbc_sta2_u ipsec_cbc_sta2;                /* 108 */
    volatile csr_ipsec_cbc_sta3_u ipsec_cbc_sta3;                /* 10C */
    volatile csr_ipsec_cbc_sta4_u ipsec_cbc_sta4;                /* 110 */
    volatile csr_cbc_core_cnt_u cbc_core_cnt;                    /* 114 */
    volatile csr_cbc_dft_mem_ctrl_0_u cbc_dft_mem_ctrl_0;        /* 150 */
    volatile csr_cbc_dft_mem_ctrl_1_u cbc_dft_mem_ctrl_1;        /* 154 */
    volatile csr_cbc_dft_mem_ctrl_2_u cbc_dft_mem_ctrl_2;        /* 158 */
    volatile csr_cbc_dft_mem_ctrl_3_u cbc_dft_mem_ctrl_3;        /* 15C */
    volatile csr_cbc_dft_mem_ctrl_4_u cbc_dft_mem_ctrl_4;        /* 160 */
    volatile csr_trng_cfg_u trng_cfg;                            /* 170 */
} S_ipsec_cbc_csr_REGS_TYPE;

/* Declare the struct pointor of the module ipsec_cbc_csr */
extern volatile S_ipsec_cbc_csr_REGS_TYPE *gopipsec_cbc_csrAllReg;

/* Declare the functions that set the member value */
int iSetCBC_FIFO_16K_TH_cbc_fifo_16k_th(unsigned int ucbc_fifo_16k_th);
int iSetSAA_CH_EN_saa_ch_en(unsigned int usaa_ch_en);
int iSetSAA_CH_EN_cbc_clk_gate_en(unsigned int ucbc_clk_gate_en);
int iSetCBC_CORE_RSV_cbc_core_rsv(unsigned int ucbc_core_rsv);
int iSetSEC_CLUSTER_RSV_sec_cluster_rsv(unsigned int usec_cluster_rsv);
int iSetSEC_ALU_ADDR_I_alu_addr_i(unsigned int ualu_addr_i);
int iSetSEC_ALU_RDATA_O_alu_rdata_o(unsigned int ualu_rdata_o);
int iSetSEC_CLUSTER_SAA_CNT_sec_cluster_saa_cnt(unsigned int usec_cluster_saa_cnt);
int iSetCBC_PROBE_I_cbc_probe_addr(unsigned int ucbc_probe_addr);
int iSetCBC_PROBE_I_cbc_probe_cs(unsigned int ucbc_probe_cs);
int iSetCBC_PROBE_I_cbc_probe_req(unsigned int ucbc_probe_req);
int iSetCBC_PROBE_RDATA_cbc_probe_rdata(unsigned int ucbc_probe_rdata);
int iSetCBC_FIFO_PROBE_CTRL_cbc_dfx_credit_dis_if(unsigned int ucbc_dfx_credit_dis_if);
int iSetCBC_FIFO_PROBE_CTRL_cbc_dfx_credit_dis_of(unsigned int ucbc_dfx_credit_dis_of);
int iSetCBC_FIFO_PROBE_CTRL_cbc_probe_bd_dis(unsigned int ucbc_probe_bd_dis);
int iSetCBC_FIFO_PROBE_CTRL_cbc_probe_ipsec_re(unsigned int ucbc_probe_ipsec_re);
int iSetCBC_FIFO_PROBE_CTRL_cbc_probe_fifo_sel(unsigned int ucbc_probe_fifo_sel);
int iSetCBC_FIFO_PROBE_STAT_cbc_fifo_probe_stat(unsigned int ucbc_fifo_probe_stat);
int iSetCBC_FIFO_PROBE_STAT_cbc_probe_ipsec_if_ept(unsigned int ucbc_probe_ipsec_if_ept);
int iSetCBC_FIFO_PROBE_STAT_cbc_probe_ipsec_of_ept(unsigned int ucbc_probe_ipsec_of_ept);
int iSetCBC_BD_ERR_CODE_cbc_bd_err_code(unsigned int ucbc_bd_err_code);
int iSetCBC_BD_ERR_CODE_CLR_cbc_bd_err_code_clr(unsigned int ucbc_bd_err_code_clr);
int iSetCBC_BD_ERR_MSK_L_cbc_bd_err_msk_l(unsigned int ucbc_bd_err_msk_l);
int iSetCBC_BD_ERR_MSK_H_cbc_bd_err_msk_h(unsigned int ucbc_bd_err_msk_h);
int iSetCBC_FIFO_PROBE_RDATA_cbc_fifo_probe_rdata(unsigned int ucbc_fifo_probe_rdata);
int iSetCBC_ECC_ERR1_CNT_cbc_ecc_err1_cnt(unsigned int ucbc_ecc_err1_cnt);
int iSetCBC_ECC_ERR2_ADDR_cbc_ecc_err2_addr(unsigned int ucbc_ecc_err2_addr);
int iSetIPSEC_CBC_INT_EN_ipsec_cbc_int_en(unsigned int uipsec_cbc_int_en);
int iSetIPSEC_CBC_ALM_ipsec_cbc_alm(unsigned int uipsec_cbc_alm);
int iSetIPSEC_CBC_STA1_ipsec_cbc_sta1(unsigned int uipsec_cbc_sta1);
int iSetIPSEC_CBC_STA2_ipsec_cbc_sta2(unsigned int uipsec_cbc_sta2);
int iSetIPSEC_CBC_STA3_ipsec_cbc_sta3(unsigned int uipsec_cbc_sta3);
int iSetIPSEC_CBC_STA4_ipsec_cbc_sta4(unsigned int uipsec_cbc_sta4);
int iSetCBC_CORE_CNT_cbc_core_cnt(unsigned int ucbc_core_cnt);
int iSetCBC_DFT_MEM_CTRL_0_cbc_dft_mem_ctrl_0(unsigned int ucbc_dft_mem_ctrl_0);
int iSetCBC_DFT_MEM_CTRL_1_cbc_dft_mem_ctrl_1(unsigned int ucbc_dft_mem_ctrl_1);
int iSetCBC_DFT_MEM_CTRL_2_cbc_dft_mem_ctrl_2(unsigned int ucbc_dft_mem_ctrl_2);
int iSetCBC_DFT_MEM_CTRL_3_cbc_dft_mem_ctrl_3(unsigned int ucbc_dft_mem_ctrl_3);
int iSetCBC_DFT_MEM_CTRL_4_cbc_dft_mem_ctrl_4(unsigned int ucbc_dft_mem_ctrl_4);
int iSetTRNG_CFG_trng_tmout_th(unsigned int utrng_tmout_th);
int iSetTRNG_CFG_trng_en(unsigned int utrng_en);
int iSetTRNG_CFG_drop_random_cfg(unsigned int udrop_random_cfg);

/* Define the union csr_gcm_fifo_16k_th_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_fifo_16k_th : 8; /* [7:0] */
        u32 rsv_0 : 24;          /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_fifo_16k_th_u;

/* Define the union csr_gcm_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_clk_gate_en : 1; /* [0] */
        u32 rsv_1 : 31;          /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_ctrl_u;

/* Define the union csr_gcm_core_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_core_rsv : 16; /* [15:0] */
        u32 rsv_2 : 16;        /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_core_rsv_u;

/* Define the union csr_gcm_cluster_rsv_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_cluster_rsv : 24; /* [23:0] */
        u32 rsv_3 : 8;            /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_cluster_rsv_u;

/* Define the union csr_gcm_probe_i_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_probe_addr : 16; /* [15:0] */
        u32 gcm_probe_cs : 4;    /* [19:16] */
        u32 gcm_probe_req : 1;   /* [20] */
        u32 rsv_4 : 11;          /* [31:21] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_probe_i_u;

/* Define the union csr_gcm_probe_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_probe_rdata : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_probe_rdata_u;

/* Define the union csr_gcm_fifo_probe_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_dfx_credit_dis_if : 1; /* [0] */
        u32 gcm_dfx_credit_dis_of : 1; /* [1] */
        u32 gcm_probe_bd_dis : 1;      /* [2] */
        u32 rsv_5 : 1;                 /* [3] */
        u32 gcm_probe_ipsec_re : 1;    /* [4] */
        u32 gcm_probe_fifo_sel : 1;    /* [5] */
        u32 rsv_6 : 26;                /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_fifo_probe_ctrl_u;

/* Define the union csr_gcm_fifo_probe_stat_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_fifo_probe_stat : 16;   /* [15:0] */
        u32 gcm_probe_ipsec_if_ept : 1; /* [16] */
        u32 gcm_probe_ipsec_of_ept : 1; /* [17] */
        u32 rsv_7 : 14;                 /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_fifo_probe_stat_u;

/* Define the union csr_gcm_fifo_probe_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_fifo_probe_rdata : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_fifo_probe_rdata_u;

/* Define the union csr_gcm_bd_err_code_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_bd_err_code : 7; /* [6:0] */
        u32 rsv_8 : 25;          /* [31:7] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_bd_err_code_u;

/* Define the union csr_gcm_bd_err_code_clr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_bd_err_code_clr : 1; /* [0] */
        u32 rsv_9 : 31;              /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_bd_err_code_clr_u;

/* Define the union csr_gcm_bd_err_msk_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_bd_err_msk_l : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_bd_err_msk_l_u;

/* Define the union csr_gcm_bd_err_msk_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_bd_err_msk_h : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_bd_err_msk_h_u;

/* Define the union csr_gcm_ecc_err1_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_ecc_err1_cnt : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_ecc_err1_cnt_u;

/* Define the union csr_gcm_ecc_err2_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 gcm_ecc_err2_addr : 12; /* [11:0] */
        u32 rsv_10 : 20;            /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_gcm_ecc_err2_addr_u;

/* Define the union csr_ipsec_gcm_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_int_en : 24; /* [23:0] */
        u32 rsv_11 : 8;            /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_int_en_u;

/* Define the union csr_ipsec_gcm_alm_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_alm : 24; /* [23:0] */
        u32 rsv_12 : 8;         /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_alm_u;

/* Define the union csr_ipsec_gcm_sta1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta1_u;

/* Define the union csr_ipsec_gcm_sta2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta2_u;

/* Define the union csr_ipsec_gcm_sta3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta3_u;

/* Define the union csr_ipsec_gcm_sta4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta4_u;

/* Define the union csr_ipsec_gcm_sta5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta5 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta5_u;

/* Define the union csr_ipsec_gcm_sta6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta6 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta6_u;

/* Define the union csr_ipsec_gcm_sta7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta7 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta7_u;

/* Define the union csr_ipsec_gcm_sta8_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta8 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta8_u;

/* Define the union csr_ipsec_gcm_sta9_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta9 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta9_u;

/* Define the union csr_ipsec_gcm_sta10_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta10 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta10_u;

/* Define the union csr_ipsec_gcm_sta11_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta11 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta11_u;

/* Define the union csr_ipsec_gcm_sta12_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ipsec_gcm_sta12 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_ipsec_gcm_sta12_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_gcm_fifo_16k_th_u gcm_fifo_16k_th;              /* 0 */
    volatile csr_gcm_ctrl_u gcm_ctrl;                            /* 4 */
    volatile csr_gcm_core_rsv_u gcm_core_rsv;                    /* 8 */
    volatile csr_gcm_cluster_rsv_u gcm_cluster_rsv;              /* 10 */
    volatile csr_gcm_probe_i_u gcm_probe_i;                      /* 20 */
    volatile csr_gcm_probe_rdata_u gcm_probe_rdata;              /* 24 */
    volatile csr_gcm_fifo_probe_ctrl_u gcm_fifo_probe_ctrl;      /* 28 */
    volatile csr_gcm_fifo_probe_stat_u gcm_fifo_probe_stat;      /* 2C */
    volatile csr_gcm_fifo_probe_rdata_u gcm_fifo_probe_rdata[8]; /* 30 */
    volatile csr_gcm_bd_err_code_u gcm_bd_err_code;              /* A0 */
    volatile csr_gcm_bd_err_code_clr_u gcm_bd_err_code_clr;      /* A4 */
    volatile csr_gcm_bd_err_msk_l_u gcm_bd_err_msk_l;            /* A8 */
    volatile csr_gcm_bd_err_msk_h_u gcm_bd_err_msk_h;            /* AC */
    volatile csr_gcm_ecc_err1_cnt_u gcm_ecc_err1_cnt;            /* B0 */
    volatile csr_gcm_ecc_err2_addr_u gcm_ecc_err2_addr;          /* B4 */
    volatile csr_ipsec_gcm_int_en_u ipsec_gcm_int_en;            /* FC */
    volatile csr_ipsec_gcm_alm_u ipsec_gcm_alm;                  /* 100 */
    volatile csr_ipsec_gcm_sta1_u ipsec_gcm_sta1;                /* 104 */
    volatile csr_ipsec_gcm_sta2_u ipsec_gcm_sta2;                /* 108 */
    volatile csr_ipsec_gcm_sta3_u ipsec_gcm_sta3;                /* 10C */
    volatile csr_ipsec_gcm_sta4_u ipsec_gcm_sta4;                /* 110 */
    volatile csr_ipsec_gcm_sta5_u ipsec_gcm_sta5;                /* 114 */
    volatile csr_ipsec_gcm_sta6_u ipsec_gcm_sta6;                /* 118 */
    volatile csr_ipsec_gcm_sta7_u ipsec_gcm_sta7;                /* 11C */
    volatile csr_ipsec_gcm_sta8_u ipsec_gcm_sta8;                /* 120 */
    volatile csr_ipsec_gcm_sta9_u ipsec_gcm_sta9;                /* 124 */
    volatile csr_ipsec_gcm_sta10_u ipsec_gcm_sta10;              /* 128 */
    volatile csr_ipsec_gcm_sta11_u ipsec_gcm_sta11;              /* 12C */
    volatile csr_ipsec_gcm_sta12_u ipsec_gcm_sta12;              /* 130 */
} S_ipsec_gcm_csr_REGS_TYPE;

/* Declare the struct pointor of the module ipsec_gcm_csr */
extern volatile S_ipsec_gcm_csr_REGS_TYPE *gopipsec_gcm_csrAllReg;

/* Declare the functions that set the member value */
int iSetGCM_FIFO_16K_TH_gcm_fifo_16k_th(unsigned int ugcm_fifo_16k_th);
int iSetGCM_CTRL_gcm_clk_gate_en(unsigned int ugcm_clk_gate_en);
int iSetGCM_CORE_RSV_gcm_core_rsv(unsigned int ugcm_core_rsv);
int iSetGCM_CLUSTER_RSV_gcm_cluster_rsv(unsigned int ugcm_cluster_rsv);
int iSetGCM_PROBE_I_gcm_probe_addr(unsigned int ugcm_probe_addr);
int iSetGCM_PROBE_I_gcm_probe_cs(unsigned int ugcm_probe_cs);
int iSetGCM_PROBE_I_gcm_probe_req(unsigned int ugcm_probe_req);
int iSetGCM_PROBE_RDATA_gcm_probe_rdata(unsigned int ugcm_probe_rdata);
int iSetGCM_FIFO_PROBE_CTRL_gcm_dfx_credit_dis_if(unsigned int ugcm_dfx_credit_dis_if);
int iSetGCM_FIFO_PROBE_CTRL_gcm_dfx_credit_dis_of(unsigned int ugcm_dfx_credit_dis_of);
int iSetGCM_FIFO_PROBE_CTRL_gcm_probe_bd_dis(unsigned int ugcm_probe_bd_dis);
int iSetGCM_FIFO_PROBE_CTRL_gcm_probe_ipsec_re(unsigned int ugcm_probe_ipsec_re);
int iSetGCM_FIFO_PROBE_CTRL_gcm_probe_fifo_sel(unsigned int ugcm_probe_fifo_sel);
int iSetGCM_FIFO_PROBE_STAT_gcm_fifo_probe_stat(unsigned int ugcm_fifo_probe_stat);
int iSetGCM_FIFO_PROBE_STAT_gcm_probe_ipsec_if_ept(unsigned int ugcm_probe_ipsec_if_ept);
int iSetGCM_FIFO_PROBE_STAT_gcm_probe_ipsec_of_ept(unsigned int ugcm_probe_ipsec_of_ept);
int iSetGCM_FIFO_PROBE_RDATA_gcm_fifo_probe_rdata(unsigned int ugcm_fifo_probe_rdata);
int iSetGCM_BD_ERR_CODE_gcm_bd_err_code(unsigned int ugcm_bd_err_code);
int iSetGCM_BD_ERR_CODE_CLR_gcm_bd_err_code_clr(unsigned int ugcm_bd_err_code_clr);
int iSetGCM_BD_ERR_MSK_L_gcm_bd_err_msk_l(unsigned int ugcm_bd_err_msk_l);
int iSetGCM_BD_ERR_MSK_H_gcm_bd_err_msk_h(unsigned int ugcm_bd_err_msk_h);
int iSetGCM_ECC_ERR1_CNT_gcm_ecc_err1_cnt(unsigned int ugcm_ecc_err1_cnt);
int iSetGCM_ECC_ERR2_ADDR_gcm_ecc_err2_addr(unsigned int ugcm_ecc_err2_addr);
int iSetIPSEC_GCM_INT_EN_ipsec_gcm_int_en(unsigned int uipsec_gcm_int_en);
int iSetIPSEC_GCM_ALM_ipsec_gcm_alm(unsigned int uipsec_gcm_alm);
int iSetIPSEC_GCM_STA1_ipsec_gcm_sta1(unsigned int uipsec_gcm_sta1);
int iSetIPSEC_GCM_STA2_ipsec_gcm_sta2(unsigned int uipsec_gcm_sta2);
int iSetIPSEC_GCM_STA3_ipsec_gcm_sta3(unsigned int uipsec_gcm_sta3);
int iSetIPSEC_GCM_STA4_ipsec_gcm_sta4(unsigned int uipsec_gcm_sta4);
int iSetIPSEC_GCM_STA5_ipsec_gcm_sta5(unsigned int uipsec_gcm_sta5);
int iSetIPSEC_GCM_STA6_ipsec_gcm_sta6(unsigned int uipsec_gcm_sta6);
int iSetIPSEC_GCM_STA7_ipsec_gcm_sta7(unsigned int uipsec_gcm_sta7);
int iSetIPSEC_GCM_STA8_ipsec_gcm_sta8(unsigned int uipsec_gcm_sta8);
int iSetIPSEC_GCM_STA9_ipsec_gcm_sta9(unsigned int uipsec_gcm_sta9);
int iSetIPSEC_GCM_STA10_ipsec_gcm_sta10(unsigned int uipsec_gcm_sta10);
int iSetIPSEC_GCM_STA11_ipsec_gcm_sta11(unsigned int uipsec_gcm_sta11);
int iSetIPSEC_GCM_STA12_ipsec_gcm_sta12(unsigned int uipsec_gcm_sta12);

/* Define the union csr_xts_key1_cfg7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg7 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg7_u;

/* Define the union csr_xts_key1_cfg6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg6 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg6_u;

/* Define the union csr_xts_key1_cfg5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg5 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg5_u;

/* Define the union csr_xts_key1_cfg4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg4_u;

/* Define the union csr_xts_key1_cfg3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg3_u;

/* Define the union csr_xts_key1_cfg2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg2_u;

/* Define the union csr_xts_key1_cfg1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg1_u;

/* Define the union csr_xts_key1_cfg0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key1_cfg0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key1_cfg0_u;

/* Define the union csr_xts_key2_cfg7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg7 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg7_u;

/* Define the union csr_xts_key2_cfg6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg6 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg6_u;

/* Define the union csr_xts_key2_cfg5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg5 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg5_u;

/* Define the union csr_xts_key2_cfg4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg4 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg4_u;

/* Define the union csr_xts_key2_cfg3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg3_u;

/* Define the union csr_xts_key2_cfg2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg2_u;

/* Define the union csr_xts_key2_cfg1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg1_u;

/* Define the union csr_xts_key2_cfg0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key2_cfg0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key2_cfg0_u;

/* Define the union csr_xts_key_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key_idx : 9;    /* [8:0] */
        u32 rsv_0 : 7;          /* [15:9] */
        u32 xts_key12_sel : 2;  /* [17:16] */
        u32 xts_key256_sel : 2; /* [19:18] */
        u32 xts_key_opr : 2;    /* [21:20] */
        u32 rsv_1 : 10;         /* [31:22] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key_ctrl_u;

/* Define the union csr_xts_key_stat_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_key_crc : 16;     /* [15:0] */
        u32 xts_key_opr_busy : 1; /* [16] */
        u32 rsv_2 : 15;           /* [31:17] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_key_stat_u;

/* Define the union csr_xtx_mem_init_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_mem_init : 1; /* [0] */
        u32 rsv_3 : 31;       /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xtx_mem_init_u;

/* Define the union csr_xts_mem_init_done_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 xts_mem_init_done : 1; /* [0] */
        u32 rsv_4 : 31;            /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_xts_mem_init_done_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_xts_key1_cfg7_u xts_key1_cfg7;         /* 0 */
    volatile csr_xts_key1_cfg6_u xts_key1_cfg6;         /* 4 */
    volatile csr_xts_key1_cfg5_u xts_key1_cfg5;         /* 8 */
    volatile csr_xts_key1_cfg4_u xts_key1_cfg4;         /* C */
    volatile csr_xts_key1_cfg3_u xts_key1_cfg3;         /* 10 */
    volatile csr_xts_key1_cfg2_u xts_key1_cfg2;         /* 14 */
    volatile csr_xts_key1_cfg1_u xts_key1_cfg1;         /* 18 */
    volatile csr_xts_key1_cfg0_u xts_key1_cfg0;         /* 1C */
    volatile csr_xts_key2_cfg7_u xts_key2_cfg7;         /* 20 */
    volatile csr_xts_key2_cfg6_u xts_key2_cfg6;         /* 24 */
    volatile csr_xts_key2_cfg5_u xts_key2_cfg5;         /* 28 */
    volatile csr_xts_key2_cfg4_u xts_key2_cfg4;         /* 2C */
    volatile csr_xts_key2_cfg3_u xts_key2_cfg3;         /* 30 */
    volatile csr_xts_key2_cfg2_u xts_key2_cfg2;         /* 34 */
    volatile csr_xts_key2_cfg1_u xts_key2_cfg1;         /* 38 */
    volatile csr_xts_key2_cfg0_u xts_key2_cfg0;         /* 3C */
    volatile csr_xts_key_ctrl_u xts_key_ctrl;           /* 40 */
    volatile csr_xts_key_stat_u xts_key_stat;           /* 44 */
    volatile csr_xtx_mem_init_u xtx_mem_init;           /* 48 */
    volatile csr_xts_mem_init_done_u xts_mem_init_done; /* 4C */
} S_ipsec_key_csr_REGS_TYPE;

/* Declare the struct pointor of the module ipsec_key_csr */
extern volatile S_ipsec_key_csr_REGS_TYPE *gopipsec_key_csrAllReg;

/* Declare the functions that set the member value */
int iSetXTS_KEY1_CFG7_xts_key1_cfg7(unsigned int uxts_key1_cfg7);
int iSetXTS_KEY1_CFG6_xts_key1_cfg6(unsigned int uxts_key1_cfg6);
int iSetXTS_KEY1_CFG5_xts_key1_cfg5(unsigned int uxts_key1_cfg5);
int iSetXTS_KEY1_CFG4_xts_key1_cfg4(unsigned int uxts_key1_cfg4);
int iSetXTS_KEY1_CFG3_xts_key1_cfg3(unsigned int uxts_key1_cfg3);
int iSetXTS_KEY1_CFG2_xts_key1_cfg2(unsigned int uxts_key1_cfg2);
int iSetXTS_KEY1_CFG1_xts_key1_cfg1(unsigned int uxts_key1_cfg1);
int iSetXTS_KEY1_CFG0_xts_key1_cfg0(unsigned int uxts_key1_cfg0);
int iSetXTS_KEY2_CFG7_xts_key2_cfg7(unsigned int uxts_key2_cfg7);
int iSetXTS_KEY2_CFG6_xts_key2_cfg6(unsigned int uxts_key2_cfg6);
int iSetXTS_KEY2_CFG5_xts_key2_cfg5(unsigned int uxts_key2_cfg5);
int iSetXTS_KEY2_CFG4_xts_key2_cfg4(unsigned int uxts_key2_cfg4);
int iSetXTS_KEY2_CFG3_xts_key2_cfg3(unsigned int uxts_key2_cfg3);
int iSetXTS_KEY2_CFG2_xts_key2_cfg2(unsigned int uxts_key2_cfg2);
int iSetXTS_KEY2_CFG1_xts_key2_cfg1(unsigned int uxts_key2_cfg1);
int iSetXTS_KEY2_CFG0_xts_key2_cfg0(unsigned int uxts_key2_cfg0);
int iSetXTS_KEY_CTRL_xts_key_idx(unsigned int uxts_key_idx);
int iSetXTS_KEY_CTRL_xts_key12_sel(unsigned int uxts_key12_sel);
int iSetXTS_KEY_CTRL_xts_key256_sel(unsigned int uxts_key256_sel);
int iSetXTS_KEY_CTRL_xts_key_opr(unsigned int uxts_key_opr);
int iSetXTS_KEY_STAT_xts_key_crc(unsigned int uxts_key_crc);
int iSetXTS_KEY_STAT_xts_key_opr_busy(unsigned int uxts_key_opr_busy);
int iSetXTX_MEM_INIT_xts_mem_init(unsigned int uxts_mem_init);
int iSetXTS_MEM_INIT_DONE_xts_mem_init_done(unsigned int uxts_mem_init_done);

/* Define the union csr_sram_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 init : 1;             /* [0] */
        u32 reg_lowpower : 1;     /* [1] */
        u32 ecc_en : 1;           /* [2] */
        u32 multi_ecc_report : 1; /* [3] */
        u32 excl_endian : 1;      /* [4] */
        u32 cnt_en : 1;           /* [5] */
        u32 decerr_report : 1;    /* [6] */
        u32 rsv_0 : 1;            /* [7] */
        u32 base_addr_en : 1;     /* [8] */
        u32 exinc_en : 1;         /* [9] */
        u32 exdec_en : 1;         /* [10] */
        u32 mbist_en : 1;         /* [11] */
        u32 rdwrap_dis : 1;       /* [12] */
        u32 rsv_1 : 3;            /* [15:13] */
        u32 rsv_2 : 16;           /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_ctrl_u;

/* Define the union csr_sram_state_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 init_over : 1;      /* [0] */
        u32 wrfifo_empty : 1;   /* [1] */
        u32 rdfifo_empty : 1;   /* [2] */
        u32 wdatfifo_empty : 1; /* [3] */
        u32 pipe_empty : 1;     /* [4] */
        u32 resp_empty : 1;     /* [5] */
        u32 rsv_3 : 2;          /* [7:6] */
        u32 decode_error : 1;   /* [8] */
        u32 slave_error : 1;    /* [9] */
        u32 ns_error : 1;       /* [10] */
        u32 single_ecc : 1;     /* [11] */
        u32 multi_ecc : 1;      /* [12] */
        u32 buscfg_rderr : 1;   /* [13] */
        u32 buscfg_wrerr : 1;   /* [14] */
        u32 buscfg_wrcft : 1;   /* [15] */
        u32 rsv_4 : 16;         /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_state_u;

/* Define the union csr_sram_sec_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 reg_sec_en : 1; /* [0] */
        u32 rsv_5 : 31;     /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_sec_ctrl_u;

/* Define the union csr_sram_sec_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 reg_sec_addr : 13; /* [12:0] */
        u32 rsv_6 : 19;        /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_sec_addr_u;

/* Define the union csr_sram_sec_size_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 reg_sec_size : 5; /* [4:0] */
        u32 rsv_7 : 27;       /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_sec_size_u;

/* Define the union csr_sram_base_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 reg_base_addr : 13; /* [12:0] */
        u32 rsv_8 : 19;         /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_base_addr_u;

/* Define the union csr_sram_intmask_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 decerr_intmsk : 1; /* [0] */
        u32 slverr_intmsk : 1; /* [1] */
        u32 nserr_intmsk : 1;  /* [2] */
        u32 ecc_intmsk : 1;    /* [3] */
        u32 cnt0_intmsk : 1;   /* [4] */
        u32 cnt1_intmsk : 1;   /* [5] */
        u32 cnt2_intmsk : 1;   /* [6] */
        u32 cnt3_intmsk : 1;   /* [7] */
        u32 buserr_intmsk : 1; /* [8] */
        u32 rsv_9 : 3;         /* [11:9] */
        u32 rsv_10 : 20;       /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_intmask_u;

/* Define the union csr_sram_rawint_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 decerr_rawint : 1; /* [0] */
        u32 slverr_rawint : 1; /* [1] */
        u32 nserr_rawint : 1;  /* [2] */
        u32 ecc_rawint : 1;    /* [3] */
        u32 cnt0_rawint : 1;   /* [4] */
        u32 cnt1_rawint : 1;   /* [5] */
        u32 cnt2_rawint : 1;   /* [6] */
        u32 cnt3_rawint : 1;   /* [7] */
        u32 buserr_rawint : 1; /* [8] */
        u32 rsv_11 : 3;        /* [11:9] */
        u32 rsv_12 : 20;       /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_rawint_u;

/* Define the union csr_sram_intsts_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 decerr_intst : 1; /* [0] */
        u32 slverr_intst : 1; /* [1] */
        u32 nserr_intst : 1;  /* [2] */
        u32 ecc_intst : 1;    /* [3] */
        u32 cnt0_intst : 1;   /* [4] */
        u32 cnt1_intst : 1;   /* [5] */
        u32 cnt2_intst : 1;   /* [6] */
        u32 cnt3_intst : 1;   /* [7] */
        u32 buserr_intst : 1; /* [8] */
        u32 rsv_13 : 3;       /* [11:9] */
        u32 rsv_14 : 20;      /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_intsts_u;

/* Define the union csr_sram_intclr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 decerr_intclr : 1; /* [0] */
        u32 slverr_intclr : 1; /* [1] */
        u32 nserr_intclr : 1;  /* [2] */
        u32 ecc_intclr : 1;    /* [3] */
        u32 cnt0_intclr : 1;   /* [4] */
        u32 cnt1_intclr : 1;   /* [5] */
        u32 cnt2_intclr : 1;   /* [6] */
        u32 cnt3_intclr : 1;   /* [7] */
        u32 buserr_intclr : 1; /* [8] */
        u32 rsv_15 : 3;        /* [11:9] */
        u32 rsv_16 : 20;       /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_intclr_u;

/* Define the union csr_sram_ecc_inject_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 bit1_sel : 7; /* [6:0] */
        u32 bit1_en : 1;  /* [7] */
        u32 bit2_sel : 7; /* [14:8] */
        u32 bit2_en : 1;  /* [15] */
        u32 rsv_17 : 16;  /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_ecc_inject_u;

/* Define the union csr_sram_err_info_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 errinfo_id : 16;   /* [15:0] */
        u32 errinfo_len : 6;   /* [21:16] */
        u32 errinfo_size : 3;  /* [24:22] */
        u32 errinfo_burst : 2; /* [26:25] */
        u32 errinfo_lock : 1;  /* [27] */
        u32 errinfo_prot : 3;  /* [30:28] */
        u32 errinfo_en : 1;    /* [31] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_err_info_u;

/* Define the union csr_sram_err_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ecc_addr : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_err_addr_u;

/* Define the union csr_sram_ecc_info_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 eccinfo_vec : 2;    /* [1:0] */
        u32 rsv_18 : 2;         /* [3:2] */
        u32 eccinfo_addr : 13;  /* [16:4] */
        u32 rsv_19 : 7;         /* [23:17] */
        u32 eccinfo_single : 1; /* [24] */
        u32 eccinfo_multi : 1;  /* [25] */
        u32 rsv_20 : 2;         /* [27:26] */
        u32 rsv_21 : 4;         /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_ecc_info_u;

/* Define the union csr_sram_clr_stat_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 clr_state : 1;    /* [0] */
        u32 clr_ecc1_cnt : 1; /* [1] */
        u32 clr_ecc2_cnt : 1; /* [2] */
        u32 clr_err_info : 1; /* [3] */
        u32 clr_ecc_info : 1; /* [4] */
        u32 clr_cnt0 : 1;     /* [5] */
        u32 clr_cnt1 : 1;     /* [6] */
        u32 clr_cnt2 : 1;     /* [7] */
        u32 clr_cnt3 : 1;     /* [8] */
        u32 rsv_22 : 23;      /* [31:9] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_clr_stat_u;

/* Define the union csr_sram_ecc_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 single_ecc_cnt : 16; /* [15:0] */
        u32 multi_ecc_cnt : 16;  /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_ecc_cnt_u;

/* Define the union csr_sram_cnt_type_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cnt0_type : 4; /* [3:0] */
        u32 cnt1_type : 4; /* [7:4] */
        u32 cnt2_type : 4; /* [11:8] */
        u32 cnt3_type : 4; /* [15:12] */
        u32 rsv_23 : 16;   /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_cnt_type_u;

/* Define the union csr_sram_cnt0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dfx_cnt0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_cnt0_u;

/* Define the union csr_sram_cnt1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dfx_cnt1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_cnt1_u;

/* Define the union csr_sram_cnt2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dfx_cnt2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_cnt2_u;

/* Define the union csr_sram_cnt3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 dfx_cnt3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_cnt3_u;

/* Define the union csr_sram_magic_word_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rsv_24 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_magic_word_u;

/* Define the union csr_sram_version_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 hisilicon_version : 12; /* [11:0] */
        u32 sub_version : 4;        /* [15:12] */
        u32 main_version : 4;       /* [19:16] */
        u32 rsv_25 : 12;            /* [31:20] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_sram_version_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_sram_ctrl_u sram_ctrl;             /* 0 */
    volatile csr_sram_state_u sram_state;           /* 4 */
    volatile csr_sram_sec_ctrl_u sram_sec_ctrl;     /* 10 */
    volatile csr_sram_sec_addr_u sram_sec_addr;     /* 14 */
    volatile csr_sram_sec_size_u sram_sec_size;     /* 18 */
    volatile csr_sram_base_addr_u sram_base_addr;   /* 20 */
    volatile csr_sram_intmask_u sram_intmask;       /* 40 */
    volatile csr_sram_rawint_u sram_rawint;         /* 44 */
    volatile csr_sram_intsts_u sram_intsts;         /* 48 */
    volatile csr_sram_intclr_u sram_intclr;         /* 4C */
    volatile csr_sram_ecc_inject_u sram_ecc_inject; /* 60 */
    volatile csr_sram_err_info_u sram_err_info;     /* 64 */
    volatile csr_sram_err_addr_u sram_err_addr;     /* 68 */
    volatile csr_sram_ecc_info_u sram_ecc_info;     /* 6C */
    volatile csr_sram_clr_stat_u sram_clr_stat;     /* 70 */
    volatile csr_sram_ecc_cnt_u sram_ecc_cnt;       /* 80 */
    volatile csr_sram_cnt_type_u sram_cnt_type;     /* 84 */
    volatile csr_sram_cnt0_u sram_cnt0;             /* 88 */
    volatile csr_sram_cnt1_u sram_cnt1;             /* 8C */
    volatile csr_sram_cnt2_u sram_cnt2;             /* 90 */
    volatile csr_sram_cnt3_u sram_cnt3;             /* 94 */
    volatile csr_sram_magic_word_u sram_magic_word; /* 7F0 */
    volatile csr_sram_version_u sram_version;       /* C10 */
} S_sram_REGS_TYPE;

/* Declare the struct pointor of the module sram */
extern volatile S_sram_REGS_TYPE *gopsramAllReg;

/* Declare the functions that set the member value */
int iSetSRAM_CTRL_init(unsigned int uinit);
int iSetSRAM_CTRL_reg_lowpower(unsigned int ureg_lowpower);
int iSetSRAM_CTRL_ecc_en(unsigned int uecc_en);
int iSetSRAM_CTRL_multi_ecc_report(unsigned int umulti_ecc_report);
int iSetSRAM_CTRL_excl_endian(unsigned int uexcl_endian);
int iSetSRAM_CTRL_cnt_en(unsigned int ucnt_en);
int iSetSRAM_CTRL_decerr_report(unsigned int udecerr_report);
int iSetSRAM_CTRL_base_addr_en(unsigned int ubase_addr_en);
int iSetSRAM_CTRL_exinc_en(unsigned int uexinc_en);
int iSetSRAM_CTRL_exdec_en(unsigned int uexdec_en);
int iSetSRAM_CTRL_mbist_en(unsigned int umbist_en);
int iSetSRAM_CTRL_rdwrap_dis(unsigned int urdwrap_dis);
int iSetSRAM_STATE_init_over(unsigned int uinit_over);
int iSetSRAM_STATE_wrfifo_empty(unsigned int uwrfifo_empty);
int iSetSRAM_STATE_rdfifo_empty(unsigned int urdfifo_empty);
int iSetSRAM_STATE_wdatfifo_empty(unsigned int uwdatfifo_empty);
int iSetSRAM_STATE_pipe_empty(unsigned int upipe_empty);
int iSetSRAM_STATE_resp_empty(unsigned int uresp_empty);
int iSetSRAM_STATE_decode_error(unsigned int udecode_error);
int iSetSRAM_STATE_slave_error(unsigned int uslave_error);
int iSetSRAM_STATE_ns_error(unsigned int uns_error);
int iSetSRAM_STATE_single_ecc(unsigned int usingle_ecc);
int iSetSRAM_STATE_multi_ecc(unsigned int umulti_ecc);
int iSetSRAM_STATE_buscfg_rderr(unsigned int ubuscfg_rderr);
int iSetSRAM_STATE_buscfg_wrerr(unsigned int ubuscfg_wrerr);
int iSetSRAM_STATE_buscfg_wrcft(unsigned int ubuscfg_wrcft);
int iSetSRAM_SEC_CTRL_reg_sec_en(unsigned int ureg_sec_en);
int iSetSRAM_SEC_ADDR_reg_sec_addr(unsigned int ureg_sec_addr);
int iSetSRAM_SEC_SIZE_reg_sec_size(unsigned int ureg_sec_size);
int iSetSRAM_BASE_ADDR_reg_base_addr(unsigned int ureg_base_addr);
int iSetSRAM_INTMASK_decerr_intmsk(unsigned int udecerr_intmsk);
int iSetSRAM_INTMASK_slverr_intmsk(unsigned int uslverr_intmsk);
int iSetSRAM_INTMASK_nserr_intmsk(unsigned int unserr_intmsk);
int iSetSRAM_INTMASK_ecc_intmsk(unsigned int uecc_intmsk);
int iSetSRAM_INTMASK_cnt0_intmsk(unsigned int ucnt0_intmsk);
int iSetSRAM_INTMASK_cnt1_intmsk(unsigned int ucnt1_intmsk);
int iSetSRAM_INTMASK_cnt2_intmsk(unsigned int ucnt2_intmsk);
int iSetSRAM_INTMASK_cnt3_intmsk(unsigned int ucnt3_intmsk);
int iSetSRAM_INTMASK_buserr_intmsk(unsigned int ubuserr_intmsk);
int iSetSRAM_RAWINT_decerr_rawint(unsigned int udecerr_rawint);
int iSetSRAM_RAWINT_slverr_rawint(unsigned int uslverr_rawint);
int iSetSRAM_RAWINT_nserr_rawint(unsigned int unserr_rawint);
int iSetSRAM_RAWINT_ecc_rawint(unsigned int uecc_rawint);
int iSetSRAM_RAWINT_cnt0_rawint(unsigned int ucnt0_rawint);
int iSetSRAM_RAWINT_cnt1_rawint(unsigned int ucnt1_rawint);
int iSetSRAM_RAWINT_cnt2_rawint(unsigned int ucnt2_rawint);
int iSetSRAM_RAWINT_cnt3_rawint(unsigned int ucnt3_rawint);
int iSetSRAM_RAWINT_buserr_rawint(unsigned int ubuserr_rawint);
int iSetSRAM_INTSTS_decerr_intst(unsigned int udecerr_intst);
int iSetSRAM_INTSTS_slverr_intst(unsigned int uslverr_intst);
int iSetSRAM_INTSTS_nserr_intst(unsigned int unserr_intst);
int iSetSRAM_INTSTS_ecc_intst(unsigned int uecc_intst);
int iSetSRAM_INTSTS_cnt0_intst(unsigned int ucnt0_intst);
int iSetSRAM_INTSTS_cnt1_intst(unsigned int ucnt1_intst);
int iSetSRAM_INTSTS_cnt2_intst(unsigned int ucnt2_intst);
int iSetSRAM_INTSTS_cnt3_intst(unsigned int ucnt3_intst);
int iSetSRAM_INTSTS_buserr_intst(unsigned int ubuserr_intst);
int iSetSRAM_INTCLR_decerr_intclr(unsigned int udecerr_intclr);
int iSetSRAM_INTCLR_slverr_intclr(unsigned int uslverr_intclr);
int iSetSRAM_INTCLR_nserr_intclr(unsigned int unserr_intclr);
int iSetSRAM_INTCLR_ecc_intclr(unsigned int uecc_intclr);
int iSetSRAM_INTCLR_cnt0_intclr(unsigned int ucnt0_intclr);
int iSetSRAM_INTCLR_cnt1_intclr(unsigned int ucnt1_intclr);
int iSetSRAM_INTCLR_cnt2_intclr(unsigned int ucnt2_intclr);
int iSetSRAM_INTCLR_cnt3_intclr(unsigned int ucnt3_intclr);
int iSetSRAM_INTCLR_buserr_intclr(unsigned int ubuserr_intclr);
int iSetSRAM_ECC_INJECT_bit1_sel(unsigned int ubit1_sel);
int iSetSRAM_ECC_INJECT_bit1_en(unsigned int ubit1_en);
int iSetSRAM_ECC_INJECT_bit2_sel(unsigned int ubit2_sel);
int iSetSRAM_ECC_INJECT_bit2_en(unsigned int ubit2_en);
int iSetSRAM_ERR_INFO_errinfo_id(unsigned int uerrinfo_id);
int iSetSRAM_ERR_INFO_errinfo_len(unsigned int uerrinfo_len);
int iSetSRAM_ERR_INFO_errinfo_size(unsigned int uerrinfo_size);
int iSetSRAM_ERR_INFO_errinfo_burst(unsigned int uerrinfo_burst);
int iSetSRAM_ERR_INFO_errinfo_lock(unsigned int uerrinfo_lock);
int iSetSRAM_ERR_INFO_errinfo_prot(unsigned int uerrinfo_prot);
int iSetSRAM_ERR_INFO_errinfo_en(unsigned int uerrinfo_en);
int iSetSRAM_ERR_ADDR_ecc_addr(unsigned int uecc_addr);
int iSetSRAM_ECC_INFO_eccinfo_vec(unsigned int ueccinfo_vec);
int iSetSRAM_ECC_INFO_eccinfo_addr(unsigned int ueccinfo_addr);
int iSetSRAM_ECC_INFO_eccinfo_single(unsigned int ueccinfo_single);
int iSetSRAM_ECC_INFO_eccinfo_multi(unsigned int ueccinfo_multi);
int iSetSRAM_CLR_STAT_clr_state(unsigned int uclr_state);
int iSetSRAM_CLR_STAT_clr_ecc1_cnt(unsigned int uclr_ecc1_cnt);
int iSetSRAM_CLR_STAT_clr_ecc2_cnt(unsigned int uclr_ecc2_cnt);
int iSetSRAM_CLR_STAT_clr_err_info(unsigned int uclr_err_info);
int iSetSRAM_CLR_STAT_clr_ecc_info(unsigned int uclr_ecc_info);
int iSetSRAM_CLR_STAT_clr_cnt0(unsigned int uclr_cnt0);
int iSetSRAM_CLR_STAT_clr_cnt1(unsigned int uclr_cnt1);
int iSetSRAM_CLR_STAT_clr_cnt2(unsigned int uclr_cnt2);
int iSetSRAM_CLR_STAT_clr_cnt3(unsigned int uclr_cnt3);
int iSetSRAM_ECC_CNT_single_ecc_cnt(unsigned int usingle_ecc_cnt);
int iSetSRAM_ECC_CNT_multi_ecc_cnt(unsigned int umulti_ecc_cnt);
int iSetSRAM_CNT_TYPE_cnt0_type(unsigned int ucnt0_type);
int iSetSRAM_CNT_TYPE_cnt1_type(unsigned int ucnt1_type);
int iSetSRAM_CNT_TYPE_cnt2_type(unsigned int ucnt2_type);
int iSetSRAM_CNT_TYPE_cnt3_type(unsigned int ucnt3_type);
int iSetSRAM_CNT0_dfx_cnt0(unsigned int udfx_cnt0);
int iSetSRAM_CNT1_dfx_cnt1(unsigned int udfx_cnt1);
int iSetSRAM_CNT2_dfx_cnt2(unsigned int udfx_cnt2);
int iSetSRAM_CNT3_dfx_cnt3(unsigned int udfx_cnt3);

int iSetSRAM_VERSION_hisilicon_version(unsigned int uhisilicon_version);
int iSetSRAM_VERSION_sub_version(unsigned int usub_version);
int iSetSRAM_VERSION_main_version(unsigned int umain_version);

/* Define the union csr_trng_output_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_output_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_output_0_u;

/* Define the union csr_trng_output_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_output_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_output_1_u;

/* Define the union csr_trng_output_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_output_95_64 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_output_2_u;

/* Define the union csr_trng_output_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_output_127_96 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_output_3_u;

/* Define the union csr_trng_input_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_input_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_input_0_u;

/* Define the union csr_trng_input_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_input_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_input_1_u;

/* Define the union csr_trng_input_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_input_95_64 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_input_2_u;

/* Define the union csr_trng_input_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_input_127_96 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_input_3_u;

/* Define the union csr_trng_status_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ready : 1;            /* [0] */
        u32 shutdown_oflo : 1;    /* [1] */
        u32 stuck_out : 1;        /* [2] */
        u32 noise_fail : 1;       /* [3] */
        u32 run_fail : 1;         /* [4] */
        u32 long_run_fail : 1;    /* [5] */
        u32 poker_fail : 1;       /* [6] */
        u32 monobit_fail : 1;     /* [7] */
        u32 test_ready : 1;       /* [8] */
        u32 stuck_nrbg : 1;       /* [9] */
        u32 reseed_ai : 1;        /* [10] */
        u32 rsv_0 : 2;            /* [12:11] */
        u32 repcnt_fail : 1;      /* [13] */
        u32 aprop_fail : 1;       /* [14] */
        u32 test_stuck_out : 1;   /* [15] */
        u32 blocks_available : 8; /* [23:16] */
        u32 blocks_thresh : 7;    /* [30:24] */
        u32 need_clock : 1;       /* [31] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_status_u;

/* Define the union csr_trng_intack_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ready_ack : 1;         /* [0] */
        u32 shutdown_oflo_ack : 1; /* [1] */
        u32 stuck_out_ack : 1;     /* [2] */
        u32 noise_fail_ack : 1;    /* [3] */
        u32 run_fail_ack : 1;      /* [4] */
        u32 long_run_fail_ack : 1; /* [5] */
        u32 poker_fail_ack : 1;    /* [6] */
        u32 monobit_fail_ack : 1;  /* [7] */
        u32 test_ready_ack : 1;    /* [8] */
        u32 stuck_nrbg_ack : 1;    /* [9] */
        u32 open_read_gate : 3;    /* [12:10] */
        u32 repcnt_fail_ack : 1;   /* [13] */
        u32 aprop_fail_ack : 1;    /* [14] */
        u32 test_stuck_out : 1;    /* [15] */
        u32 rsv_1 : 16;            /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_intack_u;

/* Define the union csr_trng_control_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 ready_mask : 1;         /* [0] */
        u32 shutdown_oflo_mask : 1; /* [1] */
        u32 stuck_out_mask : 1;     /* [2] */
        u32 noise_fail_mask : 1;    /* [3] */
        u32 run_fail_mask : 1;      /* [4] */
        u32 long_run_fail_mask : 1; /* [5] */
        u32 poker_fail_mask : 1;    /* [6] */
        u32 monobit_fail_mask : 1;  /* [7] */
        u32 test_mode : 1;          /* [8] */
        u32 stuck_nrbg_mask : 1;    /* [9] */
        u32 enable_trng : 1;        /* [10] */
        u32 no_whitening : 1;       /* [11] */
        u32 drbg_en : 1;            /* [12] */
        u32 repcnt_fail_mask : 1;   /* [13] */
        u32 aprop_fail_mask : 1;    /* [14] */
        u32 re_seed : 1;            /* [15] */
        u32 request_data : 1;       /* [16] */
        u32 request_hold : 1;       /* [17] */
        u32 rsv_2 : 2;              /* [19:18] */
        u32 data_blocks : 12;       /* [31:20] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_control_u;

/* Define the union csr_trng_config_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 noise_blocks : 5;     /* [4:0] */
        u32 use_startup_bits : 1; /* [5] */
        u32 scale : 2;            /* [7:6] */
        u32 sample_div : 4;       /* [11:8] */
        u32 read_timeout : 4;     /* [15:12] */
        u32 sample_cycles : 16;   /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_config_u;

/* Define the union csr_trng_alarmcnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 alarm_threshold : 8;    /* [7:0] */
        u32 rsv_3 : 7;              /* [14:8] */
        u32 stall_run_poker : 1;    /* [15] */
        u32 shutdown_threshold : 5; /* [20:16] */
        u32 rsv_4 : 2;              /* [22:21] */
        u32 shutdown_fatal : 1;     /* [23] */
        u32 shutdown_count : 6;     /* [29:24] */
        u32 rsv_5 : 2;              /* [31:30] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_alarmcnt_u;

/* Define the union csr_trng_froenable_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 fro_enables : 8; /* [7:0] */
        u32 rsv_6 : 24;      /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_froenable_u;

/* Define the union csr_trng_frodetune_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 fro_detunes : 8; /* [7:0] */
        u32 rsv_7 : 24;      /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_frodetune_u;

/* Define the union csr_trng_alarmmask_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 fro_alarmmasks : 8; /* [7:0] */
        u32 rsv_8 : 24;         /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_alarmmask_u;

/* Define the union csr_trng_alarmstop_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 fro_alarmstops : 8; /* [7:0] */
        u32 rsv_9 : 24;         /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_alarmstop_u;

/* Define the union csr_trng_raw_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 shift_reg_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_raw_l_u;

/* Define the union csr_trng_raw_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 shift_reg_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_raw_h_u;

/* Define the union csr_trng_spb_tests_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 repcnt : 6;           /* [5:0] */
        u32 repcnt_value_h : 2;   /* [7:6] */
        u32 aprop_64 : 6;         /* [13:8] */
        u32 aprop_64_value_h : 2; /* [15:14] */
        u32 aprop_512 : 8;        /* [23:16] */
        u32 aprop_512_h : 4;      /* [27:24] */
        u32 show_counters : 1;    /* [28] */
        u32 show_values : 1;      /* [29] */
        u32 aprop_64_fail : 1;    /* [30] */
        u32 aprop_512_fail : 1;   /* [31] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_spb_tests_u;

/* Define the union csr_trng_count_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 sample_cyc_cnt : 16; /* [15:0] */
        u32 noise_blk_cnt : 5;   /* [20:16] */
        u32 rsv_10 : 3;          /* [23:21] */
        u32 sample_cyc_ext : 6;  /* [29:24] */
        u32 rsv_11 : 2;          /* [31:30] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_count_u;

/* Define the union csr_trng_cond_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_0_u;

/* Define the union csr_trng_cond_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_1_u;

/* Define the union csr_trng_cond_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_95_64 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_2_u;

/* Define the union csr_trng_cond_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_127_96 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_3_u;

/* Define the union csr_trng_cond_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_159_128 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_4_u;

/* Define the union csr_trng_cond_5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_191_160 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_5_u;

/* Define the union csr_trng_cond_6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_223_192 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_6_u;

/* Define the union csr_trng_cond_7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 cf_output_255_224 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_cond_7_u;

/* Define the union csr_trng_key_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_0_u;

/* Define the union csr_trng_key_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_1_u;

/* Define the union csr_trng_key_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_95_64 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_2_u;

/* Define the union csr_trng_key_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_127_96 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_3_u;

/* Define the union csr_trng_key_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_159_128 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_4_u;

/* Define the union csr_trng_key_5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_191_160 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_5_u;

/* Define the union csr_trng_key_6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_223_192 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_6_u;

/* Define the union csr_trng_key_7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 key_255_224 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_key_7_u;

/* Define the union csr_trng_ps_ai_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_31_0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_0_u;

/* Define the union csr_trng_ps_ai_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_63_32 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_1_u;

/* Define the union csr_trng_ps_ai_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_95_64 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_2_u;

/* Define the union csr_trng_ps_ai_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_127_96 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_3_u;

/* Define the union csr_trng_ps_ai_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_159_128 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_4_u;

/* Define the union csr_trng_ps_ai_5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_191_160 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_5_u;

/* Define the union csr_trng_ps_ai_6_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_223_192 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_6_u;

/* Define the union csr_trng_ps_ai_7_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_255_224 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_7_u;

/* Define the union csr_trng_ps_ai_8_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_287_256 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_8_u;

/* Define the union csr_trng_ps_ai_9_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_319_288 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_9_u;

/* Define the union csr_trng_ps_ai_10_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_351_320 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_10_u;

/* Define the union csr_trng_ps_ai_11_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 vector_383_352 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ps_ai_11_u;

/* Define the union csr_trng_run_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_test_count : 15;  /* [14:0] */
        u32 run_state : 1;        /* [15] */
        u32 run_length_count : 6; /* [21:16] */
        u32 rsv_12 : 2;           /* [23:22] */
        u32 run_length_max : 6;   /* [29:24] */
        u32 rsv_13 : 2;           /* [31:30] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_cnt_u;

/* Define the union csr_trng_run_1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_1_count_zeroes : 12; /* [11:0] */
        u32 rsv_14 : 4;              /* [15:12] */
        u32 run_1_count_ones : 12;   /* [27:16] */
        u32 rsv_15 : 4;              /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_1_u;

/* Define the union csr_trng_run_2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_2_count_zeroes : 12; /* [11:0] */
        u32 rsv_16 : 4;              /* [15:12] */
        u32 run_2_count_ones : 12;   /* [27:16] */
        u32 rsv_17 : 4;              /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_2_u;

/* Define the union csr_trng_run_3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_3_count_zeroes : 10; /* [9:0] */
        u32 rsv_18 : 6;              /* [15:10] */
        u32 run_3_count_ones : 10;   /* [25:16] */
        u32 rsv_19 : 6;              /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_3_u;

/* Define the union csr_trng_run_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_4_count_zeroes : 9; /* [8:0] */
        u32 rsv_20 : 7;             /* [15:9] */
        u32 run_4_count_ones : 9;   /* [24:16] */
        u32 rsv_21 : 7;             /* [31:25] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_4_u;

/* Define the union csr_trng_run_5_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_5_count_zeroes : 8; /* [7:0] */
        u32 rsv_22 : 8;             /* [15:8] */
        u32 run_5_count_ones : 8;   /* [23:16] */
        u32 rsv_23 : 8;             /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_5_u;

/* Define the union csr_trng_run_6_up_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 run_6_up_count_zeroes : 8; /* [7:0] */
        u32 rsv_24 : 8;                /* [15:8] */
        u32 run_6_up_count_ones : 8;   /* [23:16] */
        u32 rsv_25 : 8;                /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_run_6_up_u;

/* Define the union csr_trng_monobitcnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 monobit_count_l : 17; /* [16:0] */
        u32 monobit_count_h : 15; /* [31:17] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_monobitcnt_u;

/* Define the union csr_trng_poker_3_0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 poker_count_0 : 8; /* [7:0] */
        u32 poker_count_1 : 8; /* [15:8] */
        u32 poker_count_2 : 8; /* [23:16] */
        u32 poker_count_3 : 8; /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_poker_3_0_u;

/* Define the union csr_trng_poker_7_4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 poker_count_4 : 8; /* [7:0] */
        u32 poker_count_5 : 8; /* [15:8] */
        u32 poker_count_6 : 8; /* [23:16] */
        u32 poker_count_7 : 8; /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_poker_7_4_u;

/* Define the union csr_trng_poker_b_8_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 poker_count_8 : 8; /* [7:0] */
        u32 poker_count_9 : 8; /* [15:8] */
        u32 poker_count_a : 8; /* [23:16] */
        u32 poker_count_b : 8; /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_poker_b_8_u;

/* Define the union csr_trng_poker_f_c_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 poker_count_c : 8; /* [7:0] */
        u32 poker_count_d : 8; /* [15:8] */
        u32 poker_count_e : 8; /* [23:16] */
        u32 poker_count_f : 8; /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_poker_f_c_u;

/* Define the union csr_trng_test_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 test_en_out : 1;      /* [0] */
        u32 test_patt_fro : 1;    /* [1] */
        u32 test_patt_det : 1;    /* [2] */
        u32 test_shiftreg : 1;    /* [3] */
        u32 cont_poker : 1;       /* [4] */
        u32 test_known_noise : 1; /* [5] */
        u32 test_aes_256 : 1;     /* [6] */
        u32 test_sp_800_90 : 1;   /* [7] */
        u32 test_select : 5;      /* [12:8] */
        u32 test_noise : 1;       /* [13] */
        u32 test_spb : 1;         /* [14] */
        u32 test_cond_func : 1;   /* [15] */
        u32 test_pattern : 12;    /* [27:16] */
        u32 fro_testin2_not : 1;  /* [28] */
        u32 fro_testin3 : 1;      /* [29] */
        u32 fro_testin4 : 1;      /* [30] */
        u32 test_irq : 1;         /* [31] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_test_u;

/* Define the union csr_trng_blockcnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rsv_26 : 4;       /* [3:0] */
        u32 block_count : 28; /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_blockcnt_u;

/* Define the union csr_trng_options_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 post_processor_option : 3; /* [2:0] */
        u32 rsv_27 : 3;                /* [5:3] */
        u32 nr_of_fros : 6;            /* [11:6] */
        u32 buffer_size : 3;           /* [14:12] */
        u32 rsv_28 : 1;                /* [15] */
        u32 pr_test : 1;               /* [16] */
        u32 conditioner_option : 2;    /* [18:17] */
        u32 detuning_option : 2;       /* [20:19] */
        u32 aprop_512 : 1;             /* [21] */
        u32 rsv_29 : 1;                /* [22] */
        u32 auto_detune : 1;           /* [23] */
        u32 detune_counter : 8;        /* [31:24] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_options_u;

/* Define the union csr_trng_eip_rev_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 basic_eip_number : 8;               /* [7:0] */
        u32 complement_of_basic_eip_number : 8; /* [15:8] */
        u32 hw_patch_level : 4;                 /* [19:16] */
        u32 minor_hw_revision : 4;              /* [23:20] */
        u32 major_hw_revision : 4;              /* [27:24] */
        u32 rsv_30 : 4;                         /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_eip_rev_u;

/* Define the union csr_trng_ctrl0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_mode : 1;                  /* [0] */
        u32 sec_interface_disable : 1;      /* [1] */
        u32 km_interface_disable : 1;       /* [2] */
        u32 jtagauth_interface_disable : 1; /* [3] */
        u32 user_interface_disable : 1;     /* [4] */
        u32 auto_reseed_enable : 1;         /* [5] */
        u32 hpre_interface_disable : 1;     /* [6] */
        u32 rsv_31 : 1;                     /* [7] */
        u32 mem_ctrl : 8;                   /* [15:8] */
        u32 block_cnt : 12;                 /* [27:16] */
        u32 rsv_32 : 4;                     /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ctrl0_u;

/* Define the union csr_trng_ctrl1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 check_reseed_time_gap : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ctrl1_u;

/* Define the union csr_trng_int_vector_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_cpi_int_index : 24; /* [23:0] */
        u32 rsv_33 : 3;              /* [26:24] */
        u32 trng_issue_enable : 1;   /* [27] */
        u32 trng_int_issue : 1;      /* [28] */
        u32 rsv_34 : 3;              /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_int_vector_u;

/* Define the union csr_rng_ctrl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rng_en : 1;       /* [0] */
        u32 rng_seed_sel : 1; /* [1] */
        u32 rng_ring_en : 1;  /* [2] */
        u32 rsv_35 : 29;      /* [31:3] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_rng_ctrl_u;

/* Define the union csr_rng_seed_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rng_seed : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_rng_seed_u;

/* Define the union csr_trng_fsm_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 pproc_state : 7; /* [6:0] */
        u32 rsv_36 : 1;      /* [7] */
        u32 fsm_state : 3;   /* [10:8] */
        u32 rsv_37 : 21;     /* [31:11] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_fsm_st_u;

/* Define the union csr_rng_num_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rng_num : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_rng_num_u;

/* Define the union csr_rng_phy_seed_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rng_phy_seed : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_rng_phy_seed_u;

/* Define the union csr_rng_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rng_reload_err : 1; /* [0] */
        u32 rsv_38 : 31;        /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_rng_err_u;

/* Define the union csr_trng_int_set_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 rsv_39 : 1;                /* [0] */
        u32 shut_down_oflo_intset : 1; /* [1] */
        u32 stuck_out_intset : 1;      /* [2] */
        u32 noise_fail_intset : 1;     /* [3] */
        u32 run_fail_intset : 1;       /* [4] */
        u32 long_run_fail_intset : 1;  /* [5] */
        u32 poker_fail_intset : 1;     /* [6] */
        u32 monobit_fail_intset : 1;   /* [7] */
        u32 rsv_40 : 1;                /* [8] */
        u32 stuck_nrbg_intset : 1;     /* [9] */
        u32 rsv_41 : 3;                /* [12:10] */
        u32 repcnt_fail_intset : 1;    /* [13] */
        u32 aprop_fail_intset : 1;     /* [14] */
        u32 rsv_42 : 17;               /* [31:15] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_int_set_u;

/* Define the union csr_trng_int_en_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_int_en : 2;          /* [1:0] */
        u32 rsv_43 : 14;              /* [15:2] */
        u32 trng_program_csr_id : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_int_en_u;

/* Define the union csr_trng_int_st_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_int_data : 2;           /* [1:0] */
        u32 rsv_44 : 14;                 /* [15:2] */
        u32 trng_program_csr_id_ro : 16; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_int_st_u;

/* Define the union csr_trng_ran_data0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_random_data0 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ran_data0_u;

/* Define the union csr_trng_ran_data1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_random_data1 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ran_data1_u;

/* Define the union csr_trng_ran_data2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_random_data2 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ran_data2_u;

/* Define the union csr_trng_ran_data3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32 trng_random_data3 : 32; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32 value;
} csr_trng_ran_data3_u;


// ==============================================================================
/* Define the global struct */
typedef struct {
    volatile csr_trng_output_0_u trng_output_0;     /* 0 */
    volatile csr_trng_output_1_u trng_output_1;     /* 4 */
    volatile csr_trng_output_2_u trng_output_2;     /* 8 */
    volatile csr_trng_output_3_u trng_output_3;     /* C */
    volatile csr_trng_input_0_u trng_input_0;       /* 0 */
    volatile csr_trng_input_1_u trng_input_1;       /* 4 */
    volatile csr_trng_input_2_u trng_input_2;       /* 8 */
    volatile csr_trng_input_3_u trng_input_3;       /* C */
    volatile csr_trng_status_u trng_status;         /* 10 */
    volatile csr_trng_intack_u trng_intack;         /* 10 */
    volatile csr_trng_control_u trng_control;       /* 14 */
    volatile csr_trng_config_u trng_config;         /* 18 */
    volatile csr_trng_alarmcnt_u trng_alarmcnt;     /* 1C */
    volatile csr_trng_froenable_u trng_froenable;   /* 20 */
    volatile csr_trng_frodetune_u trng_frodetune;   /* 24 */
    volatile csr_trng_alarmmask_u trng_alarmmask;   /* 28 */
    volatile csr_trng_alarmstop_u trng_alarmstop;   /* 2C */
    volatile csr_trng_raw_l_u trng_raw_l;           /* 30 */
    volatile csr_trng_raw_h_u trng_raw_h;           /* 34 */
    volatile csr_trng_spb_tests_u trng_spb_tests;   /* 38 */
    volatile csr_trng_count_u trng_count;           /* 3C */
    volatile csr_trng_cond_0_u trng_cond_0;         /* 40 */
    volatile csr_trng_cond_1_u trng_cond_1;         /* 44 */
    volatile csr_trng_cond_2_u trng_cond_2;         /* 48 */
    volatile csr_trng_cond_3_u trng_cond_3;         /* 4C */
    volatile csr_trng_cond_4_u trng_cond_4;         /* 50 */
    volatile csr_trng_cond_5_u trng_cond_5;         /* 54 */
    volatile csr_trng_cond_6_u trng_cond_6;         /* 58 */
    volatile csr_trng_cond_7_u trng_cond_7;         /* 5C */
    volatile csr_trng_key_0_u trng_key_0;           /* 40 */
    volatile csr_trng_key_1_u trng_key_1;           /* 44 */
    volatile csr_trng_key_2_u trng_key_2;           /* 48 */
    volatile csr_trng_key_3_u trng_key_3;           /* 4C */
    volatile csr_trng_key_4_u trng_key_4;           /* 50 */
    volatile csr_trng_key_5_u trng_key_5;           /* 54 */
    volatile csr_trng_key_6_u trng_key_6;           /* 58 */
    volatile csr_trng_key_7_u trng_key_7;           /* 5C */
    volatile csr_trng_ps_ai_0_u trng_ps_ai_0;       /* 40 */
    volatile csr_trng_ps_ai_1_u trng_ps_ai_1;       /* 44 */
    volatile csr_trng_ps_ai_2_u trng_ps_ai_2;       /* 48 */
    volatile csr_trng_ps_ai_3_u trng_ps_ai_3;       /* 4C */
    volatile csr_trng_ps_ai_4_u trng_ps_ai_4;       /* 50 */
    volatile csr_trng_ps_ai_5_u trng_ps_ai_5;       /* 54 */
    volatile csr_trng_ps_ai_6_u trng_ps_ai_6;       /* 58 */
    volatile csr_trng_ps_ai_7_u trng_ps_ai_7;       /* 5C */
    volatile csr_trng_ps_ai_8_u trng_ps_ai_8;       /* 60 */
    volatile csr_trng_ps_ai_9_u trng_ps_ai_9;       /* 64 */
    volatile csr_trng_ps_ai_10_u trng_ps_ai_10;     /* 68 */
    volatile csr_trng_ps_ai_11_u trng_ps_ai_11;     /* 6C */
    volatile csr_trng_run_cnt_u trng_run_cnt;       /* 40 */
    volatile csr_trng_run_1_u trng_run_1;           /* 44 */
    volatile csr_trng_run_2_u trng_run_2;           /* 48 */
    volatile csr_trng_run_3_u trng_run_3;           /* 4C */
    volatile csr_trng_run_4_u trng_run_4;           /* 50 */
    volatile csr_trng_run_5_u trng_run_5;           /* 54 */
    volatile csr_trng_run_6_up_u trng_run_6_up;     /* 58 */
    volatile csr_trng_monobitcnt_u trng_monobitcnt; /* 5C */
    volatile csr_trng_poker_3_0_u trng_poker_3_0;   /* 60 */
    volatile csr_trng_poker_7_4_u trng_poker_7_4;   /* 64 */
    volatile csr_trng_poker_b_8_u trng_poker_b_8;   /* 68 */
    volatile csr_trng_poker_f_c_u trng_poker_f_c;   /* 6C */
    volatile csr_trng_test_u trng_test;             /* 70 */
    volatile csr_trng_blockcnt_u trng_blockcnt;     /* 74 */
    volatile csr_trng_options_u trng_options;       /* 78 */
    volatile csr_trng_eip_rev_u trng_eip_rev;       /* 7C */
    volatile csr_trng_ctrl0_u trng_ctrl0;           /* C0 */
    volatile csr_trng_ctrl1_u trng_ctrl1;           /* C4 */
    volatile csr_trng_int_vector_u trng_int_vector; /* C8 */
    volatile csr_rng_ctrl_u rng_ctrl;               /* CC */
    volatile csr_rng_seed_u rng_seed;               /* D0 */
    volatile csr_trng_fsm_st_u trng_fsm_st;         /* D4 */
    volatile csr_rng_num_u rng_num;                 /* D8 */
    volatile csr_rng_phy_seed_u rng_phy_seed;       /* DC */
    volatile csr_rng_err_u rng_err;                 /* E0 */
    volatile csr_trng_int_set_u trng_int_set;       /* E4 */
    volatile csr_trng_int_en_u trng_int_en;         /* E8 */
    volatile csr_trng_int_st_u trng_int_st;         /* EC */
    volatile csr_trng_ran_data0_u trng_ran_data0;   /* F0 */
    volatile csr_trng_ran_data1_u trng_ran_data1;   /* F4 */
    volatile csr_trng_ran_data2_u trng_ran_data2;   /* F8 */
    volatile csr_trng_ran_data3_u trng_ran_data3;   /* FC */
} S_trng_csr_REGS_TYPE;

/* Declare the struct pointor of the module trng_csr */
extern volatile S_trng_csr_REGS_TYPE *goptrng_csrAllReg;

/* Declare the functions that set the member value */
int iSetTRNG_OUTPUT_0_trng_output_31_0(unsigned int utrng_output_31_0);
int iSetTRNG_OUTPUT_1_trng_output_63_32(unsigned int utrng_output_63_32);
int iSetTRNG_OUTPUT_2_trng_output_95_64(unsigned int utrng_output_95_64);
int iSetTRNG_OUTPUT_3_trng_output_127_96(unsigned int utrng_output_127_96);
int iSetTRNG_INPUT_0_trng_input_31_0(unsigned int utrng_input_31_0);
int iSetTRNG_INPUT_1_trng_input_63_32(unsigned int utrng_input_63_32);
int iSetTRNG_INPUT_2_trng_input_95_64(unsigned int utrng_input_95_64);
int iSetTRNG_INPUT_3_trng_input_127_96(unsigned int utrng_input_127_96);
int iSetTRNG_STATUS_ready(unsigned int uready);
int iSetTRNG_STATUS_shutdown_oflo(unsigned int ushutdown_oflo);
int iSetTRNG_STATUS_stuck_out(unsigned int ustuck_out);
int iSetTRNG_STATUS_noise_fail(unsigned int unoise_fail);
int iSetTRNG_STATUS_run_fail(unsigned int urun_fail);
int iSetTRNG_STATUS_long_run_fail(unsigned int ulong_run_fail);
int iSetTRNG_STATUS_poker_fail(unsigned int upoker_fail);
int iSetTRNG_STATUS_monobit_fail(unsigned int umonobit_fail);
int iSetTRNG_STATUS_test_ready(unsigned int utest_ready);
int iSetTRNG_STATUS_stuck_nrbg(unsigned int ustuck_nrbg);
int iSetTRNG_STATUS_reseed_ai(unsigned int ureseed_ai);
int iSetTRNG_STATUS_repcnt_fail(unsigned int urepcnt_fail);
int iSetTRNG_STATUS_aprop_fail(unsigned int uaprop_fail);
int iSetTRNG_STATUS_test_stuck_out(unsigned int utest_stuck_out);
int iSetTRNG_STATUS_blocks_available(unsigned int ublocks_available);
int iSetTRNG_STATUS_blocks_thresh(unsigned int ublocks_thresh);
int iSetTRNG_STATUS_need_clock(unsigned int uneed_clock);
int iSetTRNG_INTACK_ready_ack(unsigned int uready_ack);
int iSetTRNG_INTACK_shutdown_oflo_ack(unsigned int ushutdown_oflo_ack);
int iSetTRNG_INTACK_stuck_out_ack(unsigned int ustuck_out_ack);
int iSetTRNG_INTACK_noise_fail_ack(unsigned int unoise_fail_ack);
int iSetTRNG_INTACK_run_fail_ack(unsigned int urun_fail_ack);
int iSetTRNG_INTACK_long_run_fail_ack(unsigned int ulong_run_fail_ack);
int iSetTRNG_INTACK_poker_fail_ack(unsigned int upoker_fail_ack);
int iSetTRNG_INTACK_monobit_fail_ack(unsigned int umonobit_fail_ack);
int iSetTRNG_INTACK_test_ready_ack(unsigned int utest_ready_ack);
int iSetTRNG_INTACK_stuck_nrbg_ack(unsigned int ustuck_nrbg_ack);
int iSetTRNG_INTACK_open_read_gate(unsigned int uopen_read_gate);
int iSetTRNG_INTACK_repcnt_fail_ack(unsigned int urepcnt_fail_ack);
int iSetTRNG_INTACK_aprop_fail_ack(unsigned int uaprop_fail_ack);
int iSetTRNG_INTACK_test_stuck_out(unsigned int utest_stuck_out);
int iSetTRNG_CONTROL_ready_mask(unsigned int uready_mask);
int iSetTRNG_CONTROL_shutdown_oflo_mask(unsigned int ushutdown_oflo_mask);
int iSetTRNG_CONTROL_stuck_out_mask(unsigned int ustuck_out_mask);
int iSetTRNG_CONTROL_noise_fail_mask(unsigned int unoise_fail_mask);
int iSetTRNG_CONTROL_run_fail_mask(unsigned int urun_fail_mask);
int iSetTRNG_CONTROL_long_run_fail_mask(unsigned int ulong_run_fail_mask);
int iSetTRNG_CONTROL_poker_fail_mask(unsigned int upoker_fail_mask);
int iSetTRNG_CONTROL_monobit_fail_mask(unsigned int umonobit_fail_mask);
int iSetTRNG_CONTROL_test_mode(unsigned int utest_mode);
int iSetTRNG_CONTROL_stuck_nrbg_mask(unsigned int ustuck_nrbg_mask);
int iSetTRNG_CONTROL_enable_trng(unsigned int uenable_trng);
int iSetTRNG_CONTROL_no_whitening(unsigned int uno_whitening);
int iSetTRNG_CONTROL_drbg_en(unsigned int udrbg_en);
int iSetTRNG_CONTROL_repcnt_fail_mask(unsigned int urepcnt_fail_mask);
int iSetTRNG_CONTROL_aprop_fail_mask(unsigned int uaprop_fail_mask);
int iSetTRNG_CONTROL_re_seed(unsigned int ure_seed);
int iSetTRNG_CONTROL_request_data(unsigned int urequest_data);
int iSetTRNG_CONTROL_request_hold(unsigned int urequest_hold);
int iSetTRNG_CONTROL_data_blocks(unsigned int udata_blocks);
int iSetTRNG_CONFIG_noise_blocks(unsigned int unoise_blocks);
int iSetTRNG_CONFIG_use_startup_bits(unsigned int uuse_startup_bits);
int iSetTRNG_CONFIG_scale(unsigned int uscale);
int iSetTRNG_CONFIG_sample_div(unsigned int usample_div);
int iSetTRNG_CONFIG_read_timeout(unsigned int uread_timeout);
int iSetTRNG_CONFIG_sample_cycles(unsigned int usample_cycles);
int iSetTRNG_ALARMCNT_alarm_threshold(unsigned int ualarm_threshold);
int iSetTRNG_ALARMCNT_stall_run_poker(unsigned int ustall_run_poker);
int iSetTRNG_ALARMCNT_shutdown_threshold(unsigned int ushutdown_threshold);
int iSetTRNG_ALARMCNT_shutdown_fatal(unsigned int ushutdown_fatal);
int iSetTRNG_ALARMCNT_shutdown_count(unsigned int ushutdown_count);
int iSetTRNG_FROENABLE_fro_enables(unsigned int ufro_enables);
int iSetTRNG_FRODETUNE_fro_detunes(unsigned int ufro_detunes);
int iSetTRNG_ALARMMASK_fro_alarmmasks(unsigned int ufro_alarmmasks);
int iSetTRNG_ALARMSTOP_fro_alarmstops(unsigned int ufro_alarmstops);
int iSetTRNG_RAW_L_shift_reg_31_0(unsigned int ushift_reg_31_0);
int iSetTRNG_RAW_H_shift_reg_63_32(unsigned int ushift_reg_63_32);
int iSetTRNG_SPB_TESTS_repcnt(unsigned int urepcnt);
int iSetTRNG_SPB_TESTS_repcnt_value_h(unsigned int urepcnt_value_h);
int iSetTRNG_SPB_TESTS_aprop_64(unsigned int uaprop_64);
int iSetTRNG_SPB_TESTS_aprop_64_value_h(unsigned int uaprop_64_value_h);
int iSetTRNG_SPB_TESTS_aprop_512(unsigned int uaprop_512);
int iSetTRNG_SPB_TESTS_aprop_512_h(unsigned int uaprop_512_h);
int iSetTRNG_SPB_TESTS_show_counters(unsigned int ushow_counters);
int iSetTRNG_SPB_TESTS_show_values(unsigned int ushow_values);
int iSetTRNG_SPB_TESTS_aprop_64_fail(unsigned int uaprop_64_fail);
int iSetTRNG_SPB_TESTS_aprop_512_fail(unsigned int uaprop_512_fail);
int iSetTRNG_COUNT_sample_cyc_cnt(unsigned int usample_cyc_cnt);
int iSetTRNG_COUNT_noise_blk_cnt(unsigned int unoise_blk_cnt);
int iSetTRNG_COUNT_sample_cyc_ext(unsigned int usample_cyc_ext);
int iSetTRNG_COND_0_cf_output_31_0(unsigned int ucf_output_31_0);
int iSetTRNG_COND_1_cf_output_63_32(unsigned int ucf_output_63_32);
int iSetTRNG_COND_2_cf_output_95_64(unsigned int ucf_output_95_64);
int iSetTRNG_COND_3_cf_output_127_96(unsigned int ucf_output_127_96);
int iSetTRNG_COND_4_cf_output_159_128(unsigned int ucf_output_159_128);
int iSetTRNG_COND_5_cf_output_191_160(unsigned int ucf_output_191_160);
int iSetTRNG_COND_6_cf_output_223_192(unsigned int ucf_output_223_192);
int iSetTRNG_COND_7_cf_output_255_224(unsigned int ucf_output_255_224);
int iSetTRNG_KEY_0_key_31_0(unsigned int ukey_31_0);
int iSetTRNG_KEY_1_key_63_32(unsigned int ukey_63_32);
int iSetTRNG_KEY_2_key_95_64(unsigned int ukey_95_64);
int iSetTRNG_KEY_3_key_127_96(unsigned int ukey_127_96);
int iSetTRNG_KEY_4_key_159_128(unsigned int ukey_159_128);
int iSetTRNG_KEY_5_key_191_160(unsigned int ukey_191_160);
int iSetTRNG_KEY_6_key_223_192(unsigned int ukey_223_192);
int iSetTRNG_KEY_7_key_255_224(unsigned int ukey_255_224);
int iSetTRNG_PS_AI_0_vector_31_0(unsigned int uvector_31_0);
int iSetTRNG_PS_AI_1_vector_63_32(unsigned int uvector_63_32);
int iSetTRNG_PS_AI_2_vector_95_64(unsigned int uvector_95_64);
int iSetTRNG_PS_AI_3_vector_127_96(unsigned int uvector_127_96);
int iSetTRNG_PS_AI_4_vector_159_128(unsigned int uvector_159_128);
int iSetTRNG_PS_AI_5_vector_191_160(unsigned int uvector_191_160);
int iSetTRNG_PS_AI_6_vector_223_192(unsigned int uvector_223_192);
int iSetTRNG_PS_AI_7_vector_255_224(unsigned int uvector_255_224);
int iSetTRNG_PS_AI_8_vector_287_256(unsigned int uvector_287_256);
int iSetTRNG_PS_AI_9_vector_319_288(unsigned int uvector_319_288);
int iSetTRNG_PS_AI_10_vector_351_320(unsigned int uvector_351_320);
int iSetTRNG_PS_AI_11_vector_383_352(unsigned int uvector_383_352);
int iSetTRNG_RUN_CNT_run_test_count(unsigned int urun_test_count);
int iSetTRNG_RUN_CNT_run_state(unsigned int urun_state);
int iSetTRNG_RUN_CNT_run_length_count(unsigned int urun_length_count);
int iSetTRNG_RUN_CNT_run_length_max(unsigned int urun_length_max);
int iSetTRNG_RUN_1_run_1_count_zeroes(unsigned int urun_1_count_zeroes);
int iSetTRNG_RUN_1_run_1_count_ones(unsigned int urun_1_count_ones);
int iSetTRNG_RUN_2_run_2_count_zeroes(unsigned int urun_2_count_zeroes);
int iSetTRNG_RUN_2_run_2_count_ones(unsigned int urun_2_count_ones);
int iSetTRNG_RUN_3_run_3_count_zeroes(unsigned int urun_3_count_zeroes);
int iSetTRNG_RUN_3_run_3_count_ones(unsigned int urun_3_count_ones);
int iSetTRNG_RUN_4_run_4_count_zeroes(unsigned int urun_4_count_zeroes);
int iSetTRNG_RUN_4_run_4_count_ones(unsigned int urun_4_count_ones);
int iSetTRNG_RUN_5_run_5_count_zeroes(unsigned int urun_5_count_zeroes);
int iSetTRNG_RUN_5_run_5_count_ones(unsigned int urun_5_count_ones);
int iSetTRNG_RUN_6_UP_run_6_up_count_zeroes(unsigned int urun_6_up_count_zeroes);
int iSetTRNG_RUN_6_UP_run_6_up_count_ones(unsigned int urun_6_up_count_ones);
int iSetTRNG_MONOBITCNT_monobit_count_l(unsigned int umonobit_count_l);
int iSetTRNG_MONOBITCNT_monobit_count_h(unsigned int umonobit_count_h);
int iSetTRNG_POKER_3_0_poker_count_0(unsigned int upoker_count_0);
int iSetTRNG_POKER_3_0_poker_count_1(unsigned int upoker_count_1);
int iSetTRNG_POKER_3_0_poker_count_2(unsigned int upoker_count_2);
int iSetTRNG_POKER_3_0_poker_count_3(unsigned int upoker_count_3);
int iSetTRNG_POKER_7_4_poker_count_4(unsigned int upoker_count_4);
int iSetTRNG_POKER_7_4_poker_count_5(unsigned int upoker_count_5);
int iSetTRNG_POKER_7_4_poker_count_6(unsigned int upoker_count_6);
int iSetTRNG_POKER_7_4_poker_count_7(unsigned int upoker_count_7);
int iSetTRNG_POKER_B_8_poker_count_8(unsigned int upoker_count_8);
int iSetTRNG_POKER_B_8_poker_count_9(unsigned int upoker_count_9);
int iSetTRNG_POKER_B_8_poker_count_a(unsigned int upoker_count_a);
int iSetTRNG_POKER_B_8_poker_count_b(unsigned int upoker_count_b);
int iSetTRNG_POKER_F_C_poker_count_c(unsigned int upoker_count_c);
int iSetTRNG_POKER_F_C_poker_count_d(unsigned int upoker_count_d);
int iSetTRNG_POKER_F_C_poker_count_e(unsigned int upoker_count_e);
int iSetTRNG_POKER_F_C_poker_count_f(unsigned int upoker_count_f);
int iSetTRNG_TEST_test_en_out(unsigned int utest_en_out);
int iSetTRNG_TEST_test_patt_fro(unsigned int utest_patt_fro);
int iSetTRNG_TEST_test_patt_det(unsigned int utest_patt_det);
int iSetTRNG_TEST_test_shiftreg(unsigned int utest_shiftreg);
int iSetTRNG_TEST_cont_poker(unsigned int ucont_poker);
int iSetTRNG_TEST_test_known_noise(unsigned int utest_known_noise);
int iSetTRNG_TEST_test_aes_256(unsigned int utest_aes_256);
int iSetTRNG_TEST_test_sp_800_90(unsigned int utest_sp_800_90);
int iSetTRNG_TEST_test_select(unsigned int utest_select);
int iSetTRNG_TEST_test_noise(unsigned int utest_noise);
int iSetTRNG_TEST_test_spb(unsigned int utest_spb);
int iSetTRNG_TEST_test_cond_func(unsigned int utest_cond_func);
int iSetTRNG_TEST_test_pattern(unsigned int utest_pattern);
int iSetTRNG_TEST_fro_testin2_not(unsigned int ufro_testin2_not);
int iSetTRNG_TEST_fro_testin3(unsigned int ufro_testin3);
int iSetTRNG_TEST_fro_testin4(unsigned int ufro_testin4);
int iSetTRNG_TEST_test_irq(unsigned int utest_irq);
int iSetTRNG_BLOCKCNT_block_count(unsigned int ublock_count);
int iSetTRNG_OPTIONS_post_processor_option(unsigned int upost_processor_option);
int iSetTRNG_OPTIONS_nr_of_fros(unsigned int unr_of_fros);
int iSetTRNG_OPTIONS_buffer_size(unsigned int ubuffer_size);
int iSetTRNG_OPTIONS_pr_test(unsigned int upr_test);
int iSetTRNG_OPTIONS_conditioner_option(unsigned int uconditioner_option);
int iSetTRNG_OPTIONS_detuning_option(unsigned int udetuning_option);
int iSetTRNG_OPTIONS_aprop_512(unsigned int uaprop_512);
int iSetTRNG_OPTIONS_auto_detune(unsigned int uauto_detune);
int iSetTRNG_OPTIONS_detune_counter(unsigned int udetune_counter);
int iSetTRNG_EIP_REV_basic_eip_number(unsigned int ubasic_eip_number);
int iSetTRNG_EIP_REV_complement_of_basic_eip_number(unsigned int ucomplement_of_basic_eip_number);
int iSetTRNG_EIP_REV_hw_patch_level(unsigned int uhw_patch_level);
int iSetTRNG_EIP_REV_minor_hw_revision(unsigned int uminor_hw_revision);
int iSetTRNG_EIP_REV_major_hw_revision(unsigned int umajor_hw_revision);
int iSetTRNG_CTRL0_trng_mode(unsigned int utrng_mode);
int iSetTRNG_CTRL0_sec_interface_disable(unsigned int usec_interface_disable);
int iSetTRNG_CTRL0_km_interface_disable(unsigned int ukm_interface_disable);
int iSetTRNG_CTRL0_jtagauth_interface_disable(unsigned int ujtagauth_interface_disable);
int iSetTRNG_CTRL0_user_interface_disable(unsigned int uuser_interface_disable);
int iSetTRNG_CTRL0_auto_reseed_enable(unsigned int uauto_reseed_enable);
int iSetTRNG_CTRL0_hpre_interface_disable(unsigned int uhpre_interface_disable);
int iSetTRNG_CTRL0_mem_ctrl(unsigned int umem_ctrl);
int iSetTRNG_CTRL0_block_cnt(unsigned int ublock_cnt);
int iSetTRNG_CTRL1_check_reseed_time_gap(unsigned int ucheck_reseed_time_gap);
int iSetTRNG_INT_VECTOR_trng_cpi_int_index(unsigned int utrng_cpi_int_index);
int iSetTRNG_INT_VECTOR_trng_issue_enable(unsigned int utrng_issue_enable);
int iSetTRNG_INT_VECTOR_trng_int_issue(unsigned int utrng_int_issue);
int iSetRNG_CTRL_rng_en(unsigned int urng_en);
int iSetRNG_CTRL_rng_seed_sel(unsigned int urng_seed_sel);
int iSetRNG_CTRL_rng_ring_en(unsigned int urng_ring_en);
int iSetRNG_SEED_rng_seed(unsigned int urng_seed);
int iSetTRNG_FSM_ST_pproc_state(unsigned int upproc_state);
int iSetTRNG_FSM_ST_fsm_state(unsigned int ufsm_state);
int iSetRNG_NUM_rng_num(unsigned int urng_num);
int iSetRNG_PHY_SEED_rng_phy_seed(unsigned int urng_phy_seed);
int iSetRNG_ERR_rng_reload_err(unsigned int urng_reload_err);
int iSetTRNG_INT_SET_shut_down_oflo_intset(unsigned int ushut_down_oflo_intset);
int iSetTRNG_INT_SET_stuck_out_intset(unsigned int ustuck_out_intset);
int iSetTRNG_INT_SET_noise_fail_intset(unsigned int unoise_fail_intset);
int iSetTRNG_INT_SET_run_fail_intset(unsigned int urun_fail_intset);
int iSetTRNG_INT_SET_long_run_fail_intset(unsigned int ulong_run_fail_intset);
int iSetTRNG_INT_SET_poker_fail_intset(unsigned int upoker_fail_intset);
int iSetTRNG_INT_SET_monobit_fail_intset(unsigned int umonobit_fail_intset);
int iSetTRNG_INT_SET_stuck_nrbg_intset(unsigned int ustuck_nrbg_intset);
int iSetTRNG_INT_SET_repcnt_fail_intset(unsigned int urepcnt_fail_intset);
int iSetTRNG_INT_SET_aprop_fail_intset(unsigned int uaprop_fail_intset);
int iSetTRNG_INT_EN_trng_int_en(unsigned int utrng_int_en);
int iSetTRNG_INT_EN_trng_program_csr_id(unsigned int utrng_program_csr_id);
int iSetTRNG_INT_ST_trng_int_data(unsigned int utrng_int_data);
int iSetTRNG_INT_ST_trng_program_csr_id_ro(unsigned int utrng_program_csr_id_ro);
int iSetTRNG_RAN_DATA0_trng_random_data0(unsigned int utrng_random_data0);
int iSetTRNG_RAN_DATA1_trng_random_data1(unsigned int utrng_random_data1);
int iSetTRNG_RAN_DATA2_trng_random_data2(unsigned int utrng_random_data2);
int iSetTRNG_RAN_DATA3_trng_random_data3(unsigned int utrng_random_data3);


#endif // XXX_C_UNION_DEFINE_H
